| | |
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Autor | Správa |
---|
|
Cauko ludia. V C-cku som nakodil program pomocou ktoreho mozem chatovat po seriovom porte. Vsetko ide ok a posiela, ibaze momentalne to mam riesene tak ,ze ked si chcem pozriet co mi doslo tak program musim tlacitkom refreshnut. Chcel by som to riesit tak ,ze program by sa v dakych zvolenych casovych intervaloch automaticky refreshoval, no problem nastane pri realizacii dvoch procesov beziacich subezne. Bol by som vdacny keby mi daka dobra dusa poradila ako sa to realizeje. Za rady vam vopred dakujem.
|
|
Registrovaný: 21.06.07 Prihlásený: 06.05.13 Príspevky: 421 Témy: 4 | Napísal sento: 19.04.2008 22:18 | |
|
Klasicke C, alebo C++ (okna alebo bez okien) alebo dokonca C# ?
Nerozumiem tomu problemu pri 2 procesoch...
|
|
| Napísal autor témy Ivan11114: 19.04.2008 22:32 | |
|
Je to v oknach - Visual C++. Chcem aby bezala kontrola toho ci mi nieco nedoslo a subezne aby som mohol odosielat,...
|
|
Registrovaný: 24.01.08 Prihlásený: 13.09.17 Príspevky: 14572 Témy: 66 Bydlisko: Žilina |
Ivan11114 píše: Je to v oknach - Visual C++. Chcem aby bezala kontrola toho ci mi nieco nedoslo a subezne aby som mohol odosielat,...
nestaci aby si si tu kontrolu nahodil nak fixne napr na kazdych 10sekund ? moc sa mi nechce verit ze by to v C++ neslo. nepoviem ti presny kod pretoze tak v c++ nie som, ale v principe by to predsa malo fungovat... to predsa nie su 2 procesy beziace subezne, len kontrolujes ci ubehlo 10 sekund alebo nie.. obycajna podmienka "if" nie ? ci je to zlozitejsie ?
if (ubehlo 10 sekund) tak refreshi
else "vykonavaj bezny chod"
_________________ C#, PHP, ... |
|
Registrovaný: 21.06.07 Prihlásený: 06.05.13 Príspevky: 421 Témy: 4 | Napísal sento: 19.04.2008 22:47 | |
|
Spustenie casovaca:
SetTimer(2325,5000,NULL);
// 2323 ... cislo casovaca (akekolvek int cislo)
// 5000 ... spusti sa po 5000ms
// NULL ... casovac sa spusti v tej istej aplikacii
potom si cez MFC-classWizarda pridas pre dane okno (triedu) novy MessageHandler, konkretne: WM_TIMER; Vytvori sa Ti nova clenska funkcia, ktora moze potom vypadat napr. takto:
Kód: CXxxxx::OnTimer(UINT nIDEvent) { UpdateData(true);
KillTimer(nIDEvent); if(nIDEvent==2323) // Dobehol timer:2323 { // spusti, co chces SetTimer(2325,5000,NULL); // o 5000ms zasa... }
if(nIDEvent==2325) // Dobehol timer:2323 { // daco ine... } CDialog::OnTimer(nIDEvent);
UpdateData(false); }
Samozrejme, pocas toho, ked casovac bezi, moze program robit hocico, nezastavil sa...
|
|
| Napísal autor témy Ivan11114: 19.04.2008 22:56 | |
|
DDDDIIIIIIIKKKKK moc presne daco taketo som hladal.
to el mariachi: Jj ako myslienka by to bolo aj dobre len tazsie realizovatelne. Ja som vedel ze existuje funkcia timera len som nevedel ako na to. Naco si komplikovat zivot ked sa da pouzit nieco co je na to urcene ?
Este raz dik.
|
|
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|