časovač

Programovacie jazyky, rady, poradňa...
Kamik
Light Expert
Light Expert
Príspevky: 65
Registrovaný: 28 jan 2008, 16:30

časovač

Príspevok od používateľa Kamik »

Zdravím mam vytvorenú aplikáciu v C++ aplikácia ma za úlohu skenovať kanály , je funkčná ale len ked stlačim tlacitko scan tak len v tom okamihu naskenuje hodnoty . Chel by som dosiahnuť to že keď stlačiť scan bude skenovat stale a hodnoty sa v texBoxe budu menit a ked stlacim stop tak prestane skenovat vedel by mi niekto pomoct ??
robím vo Visual Studio 2010
Dakujem
pipiak
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 321
Registrovaný: 11 jún 2006, 9:24
Bydlisko: KE
Kontaktovať používateľa:

Re: časovač

Príspevok od používateľa pipiak »

No sak nazov si dal tomu dobry;) v c# existuje komponenta timer, dalej aj background worker, pripadne mozes vytvorit vlakno;)
Kamik
Light Expert
Light Expert
Príspevky: 65
Registrovaný: 28 jan 2008, 16:30

Re: časovač

Príspevok od používateľa Kamik »

pipiak napísal:No sak nazov si dal tomu dobry;) v c# existuje komponenta timer, dalej aj background worker, pripadne mozes vytvorit vlakno;)
:D ten timer to viem že je len mne to nič nevraví ja som úplný lajik v programovaní chelo by to nejaky navod a este ako to zakomponovať medzi to čo tam už mam
pipiak
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 321
Registrovaný: 11 jún 2006, 9:24
Bydlisko: KE
Kontaktovať používateľa:

Re: časovač

Príspevok od používateľa pipiak »

v c# by som ti poradil,ale nepoznam c++ ,to ti poradia dalsi;)
c-ice
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 475
Registrovaný: 04 mar 2008, 15:18
Kontaktovať používateľa:

Re: časovač

Príspevok od používateľa c-ice »

ja to riesil pred par rokmi z tohoto .. pár = 1,7 ...
http://www.programmersheaven.com/mb/mfc ... e-a-timer/
ak to nepochopis najdem projekt a vytiahnem to svoje ...
Kamik
Light Expert
Light Expert
Príspevky: 65
Registrovaný: 28 jan 2008, 16:30

Re: časovač

Príspevok od používateľa Kamik »

c-ice napísal:ja to riesil pred par rokmi z tohoto .. pár = 1,7 ...
http://www.programmersheaven.com/mb/mfc ... e-a-timer/
ak to nepochopis najdem projekt a vytiahnem to svoje ...
no nejako to nechápem mohol by si prosím ta hodiť to tvoje z projektu
c-ice
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 475
Registrovaný: 04 mar 2008, 15:18
Kontaktovať používateľa:

Re: časovač

Príspevok od používateľa c-ice »

Kód: Vybrať všetko

OOL CTestDlg::OnInitDialog()
{
  // other dialog box initialization code here is not shown
// Start the timer to kick off every seconds (1000 milliseconds)   
SetTimer(100,1000,NULL);	
return TRUE;  // return TRUE  unless you set the focus to a control
}

void CTestDlg::OnTimer(UINT nIDEvent) 
{
	CTime tmr = CTime::GetCurrentTime();
	m_Text.Format("%2d/%2d/%4d %02d:%02d:%02d",
		tmr.GetMonth(), 
		tmr.GetDay(),
		tmr.GetYear(),
		tmr.GetHour(), tmr.GetMinute(), tmr.GetSecond());
	UpdateData(FALSE);
}
toto je zo stranky ja mam v kode to iste a BTW mas MFC project dobre som si to domyslel ?
len vysvetlim ... Ty spravis iba dve veci ...
1. do funkcie OnInitDialog() pridas za "// TODO: Add extra initialization here" a pred return TRUE; tento kusok kodu

Kód: Vybrať všetko

SetTimer(100,1000,NULL);

2. vytvoris si funkciu OnTimer() presne tak ako tam je napisana ... v ktorej spracuješ co sa ma stat ked ubehol cas
nIDEvent toto je IDeventu ... to predstavuje to cislo 100 vo funkci SetTimer asi ... vdaka tomu mozes mat viac Timerov...
ten kod vnutry je iba demonstracny ... tebe bude nieco taketo stacit

Kód: Vybrať všetko

void CTestDlg::OnTimer(UINT nIDEvent) 
{
	OnSkanuj(); // nazov tvojej funkcie ktora to ma nastarosti ... resp. funkcie ktora zpracovava event kliknutia na tlacitko "Scan"
}
Kamik
Light Expert
Light Expert
Príspevky: 65
Registrovaný: 28 jan 2008, 16:30

Re: časovač

Príspevok od používateľa Kamik »

c-ice napísal:

Kód: Vybrať všetko

OOL CTestDlg::OnInitDialog()
{
  // other dialog box initialization code here is not shown
// Start the timer to kick off every seconds (1000 milliseconds)   
SetTimer(100,1000,NULL);	
return TRUE;  // return TRUE  unless you set the focus to a control
}

void CTestDlg::OnTimer(UINT nIDEvent) 
{
	CTime tmr = CTime::GetCurrentTime();
	m_Text.Format("%2d/%2d/%4d %02d:%02d:%02d",
		tmr.GetMonth(), 
		tmr.GetDay(),
		tmr.GetYear(),
		tmr.GetHour(), tmr.GetMinute(), tmr.GetSecond());
	UpdateData(FALSE);
}
toto je zo stranky ja mam v kode to iste a BTW mas MFC project dobre som si to domyslel ?
len vysvetlim ... Ty spravis iba dve veci ...
1. do funkcie OnInitDialog() pridas za "// TODO: Add extra initialization here" a pred return TRUE; tento kusok kodu

Kód: Vybrať všetko

SetTimer(100,1000,NULL);

2. vytvoris si funkciu OnTimer() presne tak ako tam je napisana ... v ktorej spracuješ co sa ma stat ked ubehol cas
nIDEvent toto je IDeventu ... to predstavuje to cislo 100 vo funkci SetTimer asi ... vdaka tomu mozes mat viac Timerov...
ten kod vnutry je iba demonstracny ... tebe bude nieco taketo stacit

Kód: Vybrať všetko

void CTestDlg::OnTimer(UINT nIDEvent) 
{
	OnSkanuj(); // nazov tvojej funkcie ktora to ma nastarosti ... resp. funkcie ktora zpracovava event kliknutia na tlacitko "Scan"
}
mam projekt Windows Forms application a tam sa timer dava asi trosku inac ci?
c-ice
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 475
Registrovaný: 04 mar 2008, 15:18
Kontaktovať používateľa:

Re: časovač

Príspevok od používateľa c-ice »

Hned druha odpoved http://www.codeguru.com/forum/archive/i ... 54726.html

ten CLR je C++ .NET ... takze to robis skor v .NETe a to ja ee ... takze ten C# by ktomu mohol mat blizšie asi
Napísať odpoveď