do while Schleife im Dialog



  • Hallo Leute,

    ich möchte in meinem Programm (Dialog) eine Schleife per Buttonklick starten und per Tastendruck oder besser per Klick auf weiteren Button stoppen. Hat jemand eine Idee wie ich es am besten realisiere?

    Habe es versucht wie in einem Konsolen-Programm zu lösen, funktioniert aber nicht (die buttons können nach Programmstart nicht mehr angesprochen werden).

    mein Versuch:
    do
    {
    ...
    }
    while (!kbhit());

    Bin für jeden Tip dankbar!
    Gruß@all



  • Mach nen Thread in den du die Schleife packst und nen anderen in dem du das Input abfängst...



  • Sorry, bin Anfänger und weiss nicht so recht was du damit meinst 😕
    Bitte ausführlicher wenn Zeit hast...



  • Sorry, bin Anfänger und weiss nicht so recht was du damit meinst 😕
    Bitte ausführlicher wenn Zeit hast...



  • Schau doch mal, ob dir das in der FAQ hilft. 🙂



  • Ich habe auch mit google eine Menge dazu gefunden, nur hab ich Probleme den Thread zu starten...

    Habe den Thread wie eine mem. Funktion deklariert:

    UINT CTest2Dlg::TestThread(LPVOID pParam)
    {
    //hier später die Schleife
    return 0;
    }

    und rufe den unter OnClickedButton() mit:

    AfxBeginThread(&CTest2Dlg::TestThread, 0, THREAD_PRIORITY_NORMAL);

    auf.

    Es kommt folgende Fehlermeldung:
    C2665: none of the 2 overload could convert all the argument types

    Weiss jemand was ich falsch mache?



  • Wenn ich richtig sehe, ist das '&' zu viel und der zweite Parmeter sollte besser NULL statt 0 sein. Achso, hast Du die Thread-Funktion auch als static deklariert?


Log in to reply