Français
Source/ Codesnippets

Laufende Programmteile Pseudothread indépendant Xprofan8

 
ne...aucune eigener Fil, quand même läufts indépendant - comment allez cela?
Genutzt wird ici, qui Profan dans qui compilé EXE pour chacun 20.la ligne (uncompiliert pour chacun la ligne) seulement einmal eintreffende Messages verarbeitet:
1.) Minuteur wird initialisiert - 1500 Millisekunden später trifft qui WM_TIMER Message vom Betriebsystem un.
2.) Profan pouvoir encore maximum 20 Zeilen plus, ensuite wird qui Message verarbeitet. Verweist qui Timermessage sur une Prozeduradresse, wird qui là stehende Voir le texte source ausgeführt; qui im Augenblick laufende Quelltextabschnit wird unterbrochen et qui Procédure wird komplett fonctionnement.
3.) Ist qui Procédure finissez führt Profan den Voir le texte source ab qui unterbrochenen la ligne wieder aus.

cet Geschichte ist sur keinen le cas avec einem Fil trop verwechseln, là ici pas entre den individuel Quelltextzeilen geswitched wird, mais qui Procédure seulement komplett abgearbeitet wird, bevor es avec dem alten Voir le texte source weitergeht. Zugriffsrechte gibt es ici naturellement également aucun eigenen, et cela ganze peut sich aussi pas à chacun beliebigen Stelle s'arrêter, comment chez einem richtigen Fil!
KompilierenMarqueSéparation
Def @GetCurrentThreadId(0) !KERNEL32,GetCurrentThreadId
DEF @GetDlgCtrlID(1) !USER32,GetDlgCtrlID
DEF @ButtonClicked(1) @GetDlgCtrlID(@&(1))=-%MENUITEM
Def @SetTimer(4) !USER32,SetTimer
Def @KillTimer(2) !USER32,KillTimer
Declare Timer_WIN&,Text$[3],Button&,Zähler%,TIMER_ID&,PRO_ID&,TH_ID&
Windowstyle 31+512
Windowtitle Selbständig laufende Programmschleife
Window 0,0-640,440
Usermessages $10
LET TIMER_WIN&=@Control(Static,TIMER_WIN,$8000000,0,0,0,0,%Desktop,9998,%HINSTANCE,$4)
Let Button&=@createbutton(%HWND,,20,100,300,30)
LET TEXT$[0]=Hier klicken...
LET TEXT$[1]=...für die...
LET TEXT$[2]=...Messagebox!
LET TIMER_ID&=@SetTimer(TIMER_WIN&,9999,1500,@ProcAddr(TimerProc,4))

While %UMESSAGE<>$10

    Waitinput
    Locate 0,0
    Print @GetCurrentThreadId(),TH_ID&

    IF @ButtonClicked(Button&)

        @messagebox(Der Text auf dem Button ändert sich weiterhin!,Ein Wunder...?,64)

    endif

wend

@KiLLTIMER(TIMER_WIN&,9999)
end

Proc TimerProc

    Parameters ahhwnd&,ahuMsg&,ahidEvent&,ahdwTime&
    Settext Button&,Text$[Zähler%]
    INC Zähler%
    Case Zähler%=4 : LET Zähler%=0
    LET TH_ID&=@GetCurrentThreadId()

ENDPROC


 
24.04.2006  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

2.248 Views

Untitledvor 0 min.
Julian Schmidt07.01.2012

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie