Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[WinApi] Pytania

Ostatnio zmodyfikowano 2010-08-22 14:37
Autor Wiadomość
Animax97
Temat założony przez niniejszego użytkownika
[WinApi] Pytania
» 2010-08-21 14:09:09
Mam 2 pytania dotyczące WinApi:
1. Dlaczego, po kliknięciu STL_BUTTON_ON program się zawiesz? To znaczy wykonuje czynność, ale nie mogę kliknąć żadnego buttonu.
C/C++
if( wPar == CTL_BUTTON_ON )
{
    Wartosc = true;
   
    while( Wartosc )
    {
        Sleep( 1000 );
        //Blok kodu
    }
}

if( wPar == CTL_BUTTON_OFF )
{
    Wartosc = false;
}
Podczas kompilacji nie wywala błęd'ów...

2. Jak pobrać/sprawdzić czy dany proces istnieje, żeby nie mógł włączyć 2x programu? Zrobiłem to na zasadzie title okna, ale to kiepski pomysł, bo jak mam otwarty folder o tej samej nazwie wtedy tez nie otworzy programu.
P-21071
Shell32
» 2010-08-21 14:23:10
zawiesza sie gdyz ciagle jest petla while i robi ciagle sleep(1000);

zrob lepiej tak

C/C++
if( Wartosc )
{
    sleep( 1000 );
    // twoj kod itp..
}

//...
to co zrobiles jest bledne bo ciagle wykonuje petle :P
P-21073
kamillo121
» 2010-08-21 14:23:40
Co do 1. a w tym miejscu gdzie masz  //blok kodu   obsługujesz zdarzenia ?
P-21074
Animax97
Temat założony przez niniejszego użytkownika
» 2010-08-21 14:39:59
@Shell32
Ale ja chce wykonywać to w nieskończoność :) Dopuki wartośc nie będzie false...
P-21076
Shell32
» 2010-08-21 14:43:34
no ja wiem, ale nie uda ci sie ta metoda co robisz :)

mozesz zrobic tak:
C/C++
Wartosc = true;

if( cos tam )
{
    Wartosc = true;
}
else
{
    Wartosc = false;
}
nie rob tego z petla while

lub

C/C++
do
{
    _sleep( 1000 );
    Wartosc = false;
} while( !Wartosc );

to bedzie najlepsze :P
P-21077
kamillo121
» 2010-08-21 14:45:33
ale jeżeli po kliknięciu CTL_BUTTON_ON ma być wykonywany jakiś tam kod i podczas wykonywania tego kodu ma być możliwość zakończenia go po kliknięciu innego buttona to musi ten kod obsługiwać zdarzenia..
P-21078
Animax97
Temat założony przez niniejszego użytkownika
» 2010-08-21 18:28:43
Oj panowie, coś nie pomagacie :)
Ison, może ty pomożesz? :P
P-21079
pekfos
» 2010-08-21 19:25:08
program się zawiesza bo wykonuje pętle w nieskończoność. Naucz się podstaw skoro piszesz pętle while(true); i się dziwisz że się zawiesza
P-21080
« 1 » 2
  Strona 1 z 2 Następna strona