[C] Visualizzazione immagini ogni tot secondi tramite ciclo for
Salve a tutti....
Sto imparando da autodidatta come programmare tramite linguaggio c# tramite l’utilizzo di visual studio…
Durante lo studio del ciclo for, ho incontrato un problema nella risoluzione di un esercizio:
allora sto lavorando con un software ( che scorre l’immagini) che dovrebbe acquisire ben 10 immagini una dopo l’altra (tramite comando start, stop e acquisition)….
Vorrei sapere se esiste un modo ( tramite ciclo for, while o altro modo) che mi permetta di visualizzare/acquisire le immagini a 10 secondi di distanza tra loro ….
Intanto questo è il pezzo di codice creato per acquisire l’immagine e salvarla in una cartella per ben 10 volte di seguito….
Ho provato a cercare i vostri precedenti topic ma non ho trovato niente
Grazie mille per la vostra disponibilità e scusatemi per la mia ignoranza ma ho iniziato da poco a studiarla….
Sto imparando da autodidatta come programmare tramite linguaggio c# tramite l’utilizzo di visual studio…
Durante lo studio del ciclo for, ho incontrato un problema nella risoluzione di un esercizio:
allora sto lavorando con un software ( che scorre l’immagini) che dovrebbe acquisire ben 10 immagini una dopo l’altra (tramite comando start, stop e acquisition)….
Vorrei sapere se esiste un modo ( tramite ciclo for, while o altro modo) che mi permetta di visualizzare/acquisire le immagini a 10 secondi di distanza tra loro ….
Intanto questo è il pezzo di codice creato per acquisire l’immagine e salvarla in una cartella per ben 10 volte di seguito….
private void Start_Click(object sender, EventArgs e) { myCam.Acquire = true; } private void Stop_Click(object sender, EventArgs e) { myCam.Acquire = false; ; } private void Acquisition_Click(object sender, EventArgs e) { int cont = 0; if (myCam.Camera >= 0 && myCam.Acquire) { //Save image immediately Bitmap bm = myCam.GetImage(); SaveFileDialog saveImageDialog = new SaveFileDialog(); saveImageDialog.Filter = "bmp files (*.bmp)|*.*"; saveImageDialog.FilterIndex = 0; saveImageDialog.RestoreDirectory = true; //Get filename for (cont = 1; cont <= 10; cont++) { if (saveImageDialog.ShowDialog() == DialogResult.OK) bm.Save(saveImageDialog.FileName + cont + ".bmp");//Save image to disk } } } } }
Ho provato a cercare i vostri precedenti topic ma non ho trovato niente
Grazie mille per la vostra disponibilità e scusatemi per la mia ignoranza ma ho iniziato da poco a studiarla….
Risposte
ciao,
non ho esperienza di programmazione in C# e sconosco totalmente le funzioni che stai utilizzando, però a occhio mi sembra che tu stia salvando 10 volte la stessa immagine con nomi diversi. dovresti mettere tutto dentro il for.
per quanto riguarda la tua domanda mi viene in mente che dentro il ciclo potresti mettere una sleep in maniera che il processo va in stato di bloccato per un po:
dove 2000 è il numero di millisecondi di attesa.
non ho esperienza di programmazione in C# e sconosco totalmente le funzioni che stai utilizzando, però a occhio mi sembra che tu stia salvando 10 volte la stessa immagine con nomi diversi. dovresti mettere tutto dentro il for.
per quanto riguarda la tua domanda mi viene in mente che dentro il ciclo potresti mettere una sleep in maniera che il processo va in stato di bloccato per un po:
Thread.Sleep(2000);
dove 2000 è il numero di millisecondi di attesa.
Grazie mille... You're amazing... Funziona!!!!!



di nulla, benvenuto sul forum
