Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Dal palco di Proofpoint Protect 2025 emerge la strategia per estendere la protezione dagli utenti agli agenti IA con il lancio di Satori Agents, nuove soluzioni di governance dei dati e partnership rafforzate che ridisegnano il panorama della cybersecurity
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Dopo alcuni anni di assenza dai cataloghi dei suoi televisori, Hisense riporta sul mercato una proposta OLED che punta tutto sul rapporto qualità prezzo. Hisense 55A85N è un televisore completo e versatile che riesce a convincere anche senza raggiungere le vette di televisori di altra fascia (e altro prezzo)
Recensione Borderlands 4, tra divertimento e problemi tecnici
Recensione Borderlands 4, tra divertimento e problemi tecnici
Gearbox Software rilancia la saga con Borderlands 4, ora disponibile su PS5, Xbox Series X|S e PC. Tra le novità spiccano nuove abilità di movimento, un pianeta inedito da esplorare e una campagna che lascia al giocatore piena libertà di approccio
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-05-2008, 19:17   #1
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
[ Visual Basic ] Timer & Ciclo - Genymus

Salve,
Sto sviluppando un programma che ogni secondo legga il contenuto di un file di testo e lo stampi su una ListBox...
In pratica deve fare così:

Avvio Applicazione
+ 1 Secondo -> Leggi File -> Stampa Su ListBox ( Ciclo Continuo )
+ 1 Secondo -> Leggi File -> Stampa Su ListBox ( Ciclo Continuo )
+ 1 Secondo -> Leggi File -> Stampa Su ListBox ( Ciclo Continuo )
+ 1 Secondo -> Leggi File -> Stampa Su ListBox ( Ciclo Continuo )
+ 1 Secondo -> Leggi File -> Stampa Su ListBox ( Ciclo Continuo )
ecc...

è Possibile?
Grazie
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 17-05-2008, 20:09   #2
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
Funzione Timer... qualcuno mi spiega come posso applicarla a questo programma?
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 18-05-2008, 07:02   #3
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
Quote:
Originariamente inviato da Genymus Guarda i messaggi
Funzione Timer... qualcuno mi spiega come posso applicarla a questo programma?
meti il controllo timer e lo setti nella proprietà timer a 1000 ovvero un secondo.

da codice, per esempio cliccando in un button1, abiliti la proprietà del timer Enable su true da questo momento in poi ogni secondo il flusso entra nel code del timer qui leggi il file testo e lo stampi su listbox metti pure un' istruzione DoEvents e vai.
okay è offline   Rispondi citando il messaggio o parte di esso
Old 18-05-2008, 09:53   #4
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
Mi dice che l'istruzione DoEvents non esiste...
come faccio a fare il refresh del sub in modo che mi ripeta l'operazione ogni tot secondi?
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 18-05-2008, 14:46   #5
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Genymus Guarda i messaggi
Mi dice che l'istruzione DoEvents non esiste...
come faccio a fare il refresh del sub in modo che mi ripeta l'operazione ogni tot secondi?
Per fare quello che vuoi tu basta che da una parte ( evento, routine, pulsante ecc... ) tu gli dia il Timer.Enabled = True, per farlo partire ( quindi la proprietà del Timer in design mode deve essere False ), e poi crea la routine Private Sub Timer_Tick ... e mettici tutto quello che deve fare per ogni scatto ( Tick ).
Do Events lascialo perdere...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 18-05-2008, 17:32   #6
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
Perfetto
funziona però non è il massimo come chat
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 08:15   #7
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Genymus Guarda i messaggi
Perfetto
funziona però non è il massimo come chat
Cioè ?
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 14:33   #8
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
volevo fare una chat in cui il testo si salvava in un file che veniva letto ogni secondo dal programma... però ogni volta che aggiorno la listbox il puntatore del file mi và all'inizio e così non si riesce a vedere le cose che vengono scritte dopo la grandezza della listbox
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 15:35   #9
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Genymus Guarda i messaggi
volevo fare una chat in cui il testo si salvava in un file che veniva letto ogni secondo dal programma... però ogni volta che aggiorno la listbox il puntatore del file mi và all'inizio e così non si riesce a vedere le cose che vengono scritte dopo la grandezza della listbox
Beh, tu forza la selezione dell'ultimo Item della listbox ad ogni Tick del Timer...
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 15:49   #10
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
come potrei fare?
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 16:05   #11
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
Un'altra cosa... ho creato una checkbox ma non riesco a fare, che se la check box è attiva, un'operazione:

Codice:
If CheckBox1 = True Then
TextBox1.Text = "Cancellare File"
End If
Pur essendo giusto il codice (o almeno non dà errori), non mi scrive "cancellare file" dello la textbox.
Grazie
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 16:13   #12
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
Come faccio ad attivare un'evento premendo il tasto "invio" ("enter") sulla mia tastiera?
Grazie
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 16:27   #13
banryu79
Senior Member
 
L'Avatar di banryu79
 
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
Quote:
Originariamente inviato da Genymus Guarda i messaggi
Un'altra cosa... ho creato una checkbox ma non riesco a fare, che se la check box è attiva, un'operazione:

Codice:
If CheckBox1 = True Then
TextBox1.Text = "Cancellare File"
End If
Pur essendo giusto il codice (o almeno non dà errori), non mi scrive "cancellare file" dello la textbox.
Grazie
Forse perchè oltre a settare la stringa da mostrare a video devi anche far eseguire un "refresh" della grafica?
banryu79 è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 18:33   #14
Genymus
Senior Member
 
L'Avatar di Genymus
 
Iscritto dal: Oct 2007
Messaggi: 364
Quote:
Originariamente inviato da banryu79 Guarda i messaggi
Forse perchè oltre a settare la stringa da mostrare a video devi anche far eseguire un "refresh" della grafica?
mi può spiegare come devo fare?

Quote:
Come faccio ad attivare un'evento premendo il tasto "invio" ("enter") sulla mia tastiera?
E questo?.. nessuno lo sa?

Quote:
Beh, tu forza la selezione dell'ultimo Item della listbox ad ogni Tick del Timer...
e quest'altro?
__________________
Genymus!!!
"Che cosa vorreste far incidere sulla vostra tomba?". "Torno fra 5 minuti."
"Lucido" è quando credi soltanto a metà di ciò che ti dicono. "Brillante" è quando sai a quale metà credere.
"Pensa, ogni volta che respiro muore un uomo." "Hai provato a fare qualcosa per l'alito?"

Aforismieaforismi.it
Genymus è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2008, 03:23   #15
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
Quote:
Originariamente inviato da Genymus Guarda i messaggi
mi può spiegare come devo fare?


E questo?.. nessuno lo sa?


e quest'altro?
If CheckBox1 = True Then

doevents

TextBox1.Text = "Cancellare File"
End If
okay è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2008, 03:24   #16
okay
Senior Member
 
Iscritto dal: Feb 2002
Messaggi: 906
Quote:
Originariamente inviato da Genymus Guarda i messaggi
mi può spiegare come devo fare?


E questo?.. nessuno lo sa?


e quest'altro?
il doevents è molto importante per il vb6
in pratica è una sorta di "semaforo thread" in c/c++ cosa che in vb il thread non esiste proprio farlo manualmente... nel tuo caso neanche riesci a stampare una innocua text...

doevents ' lo puoi anche mettere prima

If CheckBox1 = True Then

doevents 'passa il controllo ad altre operazioni


TextBox1.Text = "Cancellare File"
End If

Nel tuo caso probabilmente hai in corso la stampa sulla listbox nonchè il timer attivato e il ciclo continuo in corso DoEvents fa in modo di sospendere un attimo il ciclo in cui sei quindi passare alla stampa della text e ritornare al ciclo prioritario.

Quando si stà in un ciclo impegnativo o continuo e clicchi come nel tuo caso su una checkbox la textbox diventa bianca e ci rimane finchè non finisce il ciclo mentre con DoEvents viene passato l'evento disimpegnando la cpu dal ciclo poi come si esce dalla sub si ritorno al ciclo.

Cmq tanti DoEvents rallentano le prestazioni

<...
Come faccio ad attivare un'evento premendo il tasto "invio" ("enter") sulla mia tastiera?
...>


metti la proprietà del form keypreview = true

poi vai nella routine del form KeyPess e dentro scrivi:
If KeyAscii = 13 Then
... code
endif

saluti

Ultima modifica di okay : 20-05-2008 alle 05:41.
okay è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti Hisense A85N: il ritorno all’OLED è convi...
Recensione Borderlands 4, tra divertimento e problemi tecnici Recensione Borderlands 4, tra divertimento e pro...
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale TCL NXTPAPER 60 Ultra: lo smartphone che trasfor...
Un fulmine sulla scrivania, Corsair Sabre v2 Pro ridefinisce la velocità nel gaming Un fulmine sulla scrivania, Corsair Sabre v2 Pro...
Avio: contratto da 40 milioni di € da ES...
Claude Sonnet 4.5, il nuovo modello di A...
Silent Hill f è un successo: gi&a...
Nuova Jeep Compass: aperti i preordini p...
La PS5 Slim con SSD più piccolo s...
Zero combustibili fossili e controllo qu...
Corsair NAUTILUS 360 RS LCD: raffreddame...
Nuovo record nel mondo dei computer quan...
Sony e Universal combatteranno l'IA con....
Il Chips Act europeo attuale è un...
OnePlus 15: debutto globale con design '...
Amazon Prime: addio alla prova gratuita ...
Windows 11 25H2: guida passo-passo per l...
ECOVACS Deebot Mini sotto i 300€, robot ...
USA chiedono a Taiwan di produrre chip i...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 22:15.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v