Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura)
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura)
Abbiamo provato per dieci giorni la Hyundai IONIQ 5 N, con 650 CV, 770 Nm e uno 0-100 km/h in 3,4 secondi. Il suo punto forte è N e-Shift, che simula un cambio a otto rapporti con suoni da motore termico e perfino un bang supersonico
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale
La prima tappa italiana della Road to CES porta a Milano i vertici della Consumer Technology Association, con una nuova griglia di lettura dei trend tecnologici e una posizione netta su dazi e regolamentazione dell'IA
 Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP
Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP
OPPO ha appena lanciato sul mercato la nuova serie Find X10, che ha come smartphone premium il Find X10 Pro Max, uno smartphone completo, che fa del comparto fotografico il suo vero punto di forza. Ma sono tante le novità, tra cui l'AI che adesso diventa agentica. Ma andiamo a vedere nel dettaglio questo nuovo smartphone.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-04-2009, 15:33   #1
Napalm
Senior Member
 
L'Avatar di Napalm
 
Iscritto dal: May 2000
Messaggi: 1135
[C#]Cambiare colore di sfondo form a mò di lampeggio

Salve,

devo cambiare colore di sfondo di un form (windows mobile 2003) in modo che emulasse un lampeggio, cioè passare da colore bianco a rosso dopo un tot di millisecondi. Ho un oggetto timer che ogni secondo esegue un operazione:

Codice:
this.BackColor = System.Drawing.Color.Red;
Thread.Sleep(100);
this.BackColor = System.Drawing.Color.White;
e noto che il colore non cambia o meglio il colore diventa quello indicato dopo lo sleep e non si vede l'effetto lampeggio.
Dove ho sbagliato?

NapalM
__________________
Quote:
Originariamente inviato da trallallero Guarda i messaggi
Gli anti-fascisti, quelli fascisti coi fascisti, "i diversamente fascisti" (cit. "Napalm"), non meritano il mio rispetto
Napalm è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 17:34   #2
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
No, hai già un Timer, che te ne fai dello Sleep ?

Codice:
        private void timer1_Tick(object sender, EventArgs e)
        {
            if (this.BackColor == System.Drawing.Color.Red){
                this.BackColor = System.Drawing.Color.White;
            }
            else {
                this.BackColor = System.Drawing.Color.Red;
            }
        }
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 19:19   #3
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4908
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
No, hai già un Timer, che te ne fai dello Sleep ?

Codice:
        private void timer1_Tick(object sender, EventArgs e)
        {
            if (this.BackColor == System.Drawing.Color.Red){
                this.BackColor = System.Drawing.Color.White;
            }
            else {
                this.BackColor = System.Drawing.Color.Red;
            }
        }
Perché usi il this?
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 19:39   #4
Kralizek
Senior Member
 
L'Avatar di Kralizek
 
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
io lo uso sempre quando sto usando membri della classe, form o page che sia. Così distinguo facilmente tra membri e variabili locali.
Kralizek è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 19:42   #5
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4908
Quote:
Originariamente inviato da Kralizek Guarda i messaggi
io lo uso sempre quando sto usando membri della classe, form o page che sia. Così distinguo facilmente tra membri e variabili locali.
Boh, a me sembra ridondante.
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 03-04-2009, 22:20   #6
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
In linea di massima sono d'accordo con Kralizek ( sei uno dei pochi che mi capisce ). In questo caso il motivo era semplicemente riutilizzare il codice di Napalm e far notare le uniche differenze con il mio.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 00:26   #7
Kralizek
Senior Member
 
L'Avatar di Kralizek
 
Iscritto dal: Feb 2003
Città: Stockholm (SE)
Messaggi: 1343
Quote:
Originariamente inviato da ||ElChE||88 Guarda i messaggi
Boh, a me sembra ridondante.
Quando si lavora in un team ogni ridondanza può aiutare gli altri a capire il tuo codice. Un po' come l'indentatura ed i commenti (quando non sono scritti in svedese, scorretto tra l'altro )

Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
In linea di massima sono d'accordo con Kralizek ( sei uno dei pochi che mi capisce ).
Altro motivo per cui sono abituato ad usare la keyword this è perchè gioco molto con la derivazione, polimorfismo e generics. con this e base sai sempre esattamente quale metodo stai chiamando.

Un esempio pratico:

Codice:
public class MiaLista : List<MioOggetto>
{
    public new void Add(MioOggetto item)
    {
        if (item.Proprieta1.Length > 0)
            Add(item);
    }

    public void Add(string proprieta1, int proprieta2, bool proprieta3)
    {
        MioOggetto item = new MioOggetto ( proprieta1, proprieta2, proprieta3);
        Add(item);
    }

    ...
}
Nel primo metodo se non specifico "base" do luogo ad uno StackOverflow, nel secondo, se non specifico "this", non è intuitivo capire cosa sto chimando.

Insomma, 5 caratteri in più non guastano ed aiutanto tanto la comprensione tua quanto quella di altri.
Kralizek è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 01:36   #8
||ElChE||88
Senior Member
 
Iscritto dal: Dec 2003
Messaggi: 4908
Quote:
Originariamente inviato da Kralizek Guarda i messaggi
Quando si lavora in un team ogni ridondanza può aiutare gli altri a capire il tuo codice. Un po' come l'indentatura ed i commenti (quando non sono scritti in svedese, scorretto tra l'altro )
Questo lo so... sono all'università e già vedo codice mal scritto, pieno di commenti inutili dappertutto (il top è uno che scrive i commenti, i metodi e le variabili in gaelico... ).
Quote:
Originariamente inviato da Kralizek Guarda i messaggi
Nel primo metodo se non specifico "base" do luogo ad uno StackOverflow, nel secondo, se non specifico "this", non è intuitivo capire cosa sto chimando.
Sisi, ma in questo caso il base è una scleta obbligata.
Quote:
Originariamente inviato da Kralizek Guarda i messaggi
Insomma, 5 caratteri in più non guastano ed aiutanto tanto la comprensione tua quanto quella di altri.
In effetti non sembra stupido... soprattutto se usato nelle Forms. Ci farò un pensierino.
||ElChE||88 è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 08:43   #9
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Cmq, Napalm, aumenta anche l'intervallo del Timer. 100 msec sono da mal di testa !
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 10:06   #10
Napalm
Senior Member
 
L'Avatar di Napalm
 
Iscritto dal: May 2000
Messaggi: 1135
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
No, hai già un Timer, che te ne fai dello Sleep ?

Codice:
        private void timer1_Tick(object sender, EventArgs e)
        {
            if (this.BackColor == System.Drawing.Color.Red){
                this.BackColor = System.Drawing.Color.White;
            }
            else {
                this.BackColor = System.Drawing.Color.Red;
            }
        }
mhmh non se pole, nel senso non è quello che vorrei fare io: il timer ha uno tick di 1 sec quindi in pratica rimarrebbe colorato per 1 secondo di rosso poi diventerebbe bianco ecc.. nella tua soluzione mentre io vorrei che fosse proprio un lampeggio di 100 msec e basta (questo perché il timer deve obbligatoriamente avere un tick di 1 sec)
Teoricamente dovrei aver trovato la soluzione: un timer nel timer e via
Grazie

NapalM
__________________
Quote:
Originariamente inviato da trallallero Guarda i messaggi
Gli anti-fascisti, quelli fascisti coi fascisti, "i diversamente fascisti" (cit. "Napalm"), non meritano il mio rispetto
Napalm è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 10:09   #11
Napalm
Senior Member
 
L'Avatar di Napalm
 
Iscritto dal: May 2000
Messaggi: 1135
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Cmq, Napalm, aumenta anche l'intervallo del Timer. 100 msec sono da mal di testa !
ihih si ma tanto dura solo 5 secondi, ed è un segnale visivo perché l'utente potrebbe essere distante dal palmare (infatti è accoppiato ad un segnale audio)

NapalM
__________________
Quote:
Originariamente inviato da trallallero Guarda i messaggi
Gli anti-fascisti, quelli fascisti coi fascisti, "i diversamente fascisti" (cit. "Napalm"), non meritano il mio rispetto
Napalm è offline   Rispondi citando il messaggio o parte di esso
Old 04-04-2009, 10:29   #12
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Quote:
Originariamente inviato da Napalm Guarda i messaggi
mhmh non se pole, nel senso non è quello che vorrei fare io: il timer ha uno tick di 1 sec quindi in pratica rimarrebbe colorato per 1 secondo di rosso poi diventerebbe bianco ecc.. nella tua soluzione mentre io vorrei che fosse proprio un lampeggio di 100 msec e basta (questo perché il timer deve obbligatoriamente avere un tick di 1 sec)
Teoricamente dovrei aver trovato la soluzione: un timer nel timer e via
Grazie

NapalM
Ma, scusa eh, nessuno ti vieta di fare tutto nello stesso identico Timer.
Imposti l'intervallo ad esempio a 100ms, e fai gestire il cambio di colore ogni 100 ms.
Per tutto il resto ( codice da eseguire ogni secondo = 1000 msec ) basta che crei un contatore esterno ( variabile privata a livello di Form ), e quando raggiunge un multiplo di 10 ( 10x100 ms = 1 sec ), lo esegue.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 06-04-2009, 10:43   #13
Napalm
Senior Member
 
L'Avatar di Napalm
 
Iscritto dal: May 2000
Messaggi: 1135
Ciao Marco, la tua soluzione è possibile ma riflettendoci sopra ho creato una classe generica dove gli passo l'oggetto, quanti "lampeggi", tempo fra i "lampeggi" e colore da inserire in modo da poterlo riutilizzare in altre cose

NapalM
__________________
Quote:
Originariamente inviato da trallallero Guarda i messaggi
Gli anti-fascisti, quelli fascisti coi fascisti, "i diversamente fascisti" (cit. "Napalm"), non meritano il mio rispetto
Napalm è offline   Rispondi citando il messaggio o parte di esso
Old 06-04-2009, 12:43   #14
MarcoGG
Senior Member
 
L'Avatar di MarcoGG
 
Iscritto dal: Dec 2004
Messaggi: 3210
Niente da ridire, il codice riutilizzabile è sempre la scelta migliore.
MarcoGG è offline   Rispondi citando il messaggio o parte di esso
Old 06-04-2009, 12:52   #15
Napalm
Senior Member
 
L'Avatar di Napalm
 
Iscritto dal: May 2000
Messaggi: 1135
Quote:
Originariamente inviato da MarcoGG Guarda i messaggi
Niente da ridire, il codice riutilizzabile è sempre la scelta migliore.
giusto, grazie mille cmq per la consulenza

NapalM
__________________
Quote:
Originariamente inviato da trallallero Guarda i messaggi
Gli anti-fascisti, quelli fascisti coi fascisti, "i diversamente fascisti" (cit. "Napalm"), non meritano il mio rispetto
Napalm è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
CES Unveiled Milan, l'IA diventa tecnologia fondativa e il commercio torna centrale CES Unveiled Milan, l'IA diventa tecnologia fond...
 Recensione OPPO Find X10 Pro Max: un top di gamma completo con tre fotocamere da 200MP Recensione OPPO Find X10 Pro Max: un top di gam...
WoW Forever provato: il MMORPG che la community chiedeva da anni è arrivato WoW Forever provato: il MMORPG che la community ...
TCL P80 Ultra: con un display AMOLED opaco è una gioia per gli occhi e per le dita TCL P80 Ultra: con un display AMOLED opaco &egra...
CATL e BAIC puntano a un milione di auto...
La Svezia blocca ChatGPT e Claude sui co...
La NASA ha tenuto una conferenza sulle f...
Galaxy S27 Ultra, spunta la batteria in ...
Google Maps porta l'intelligenza artific...
Una foto troppo perfetta può costare car...
Caldo in Europa, oltre 50.000 morti stim...
Il low cost spopola su Amazon: 7 offerte...
HP Envy 6120e a 49,90€ su Amazon: stampa...
Dove finiscono le ore che l’IA fa rispar...
Radiatori a olio in offerta su Amazon: M...
Tlc, l'occupazione crolla al minimo stor...
SteelSeries Apex Pro Mini Wireless a 139...
DJI Osmo Action 4 in offerta su Amazon: ...
Da 2 euro fino a 14,99 euro: ufficiali l...
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: 13:28.


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