Français
Source/ Codesnippets

Sichere Subclassproc Threads Minuteur

 
- page 1 -


SubClassProc Minuteur - sichere
KompilierenMarqueSéparation
 $H windows.ph
WINDOWSTYLE 80 | 512 | 1024
WINDOW %MAXX,%MAXY - 0,0
SHOWWINDOW(%HWND,0)
WINDOWSTYLE 1 | 2 | 4 | 8 | 16 | 512
var HMYWND&=(CREATE("WINDOW",(0),"Zuckertest 3.0",(100),(100),(200),(350)))
var HPIC&=CREATE("hNewPic",64,64,$FFFFAA)
var HDSK&=CREATE("text",HMYWND&,"",0,0,$FFFF,$FFFF)
var HSTATBAR&=CREATE("statusWindow",HMYWND&,"Bereit.")
USERMESSAGES $0010,$0014
MYWND.RESIZING()
SUBCLASS HMYWND&,1
~SetClassLongA(HMYWND&,-12,~LoadCursorA(0,32512))
~SetTimer(HMYWND&,55100,100,0)
~SetTimer(HMYWND&,55101,500,0)

WHILE 1

    WAITINPUT

    SELECT %UMESSAGE

        CASEOF $0010

        SELECT %MWND

            CASEOF HMYWND&

            BREAK

        ENDSELECT

    ENDSELECT

ENDWHILE

~KillTimer(HMYWND&,55100)
~KillTimer(HMYWND&,55101)
end

SUBCLASSPROC

    SELECT &SWND

        CASEOF HMYWND&

        SELECT %SMESSAGE

            CASEOF 532,$0005

            MYWND.RESIZING()

            CASEOF $0113

            SELECT &SWPARAM

                CASEOF 55100

                DEMO(1)

                CASEOF 55101

                DEMO(2)

            ENDSELECT

        ENDSELECT

    ENDSELECT

endproc

proc MYWND.RESIZING

    SETWINDOWPOS HSTATBAR&=0,0 - 0,0
    DEMO(1)
    DEMO(2)

endproc

proc DEMO

    PARAMETERS MODE&

    SELECT MODE&

        CASEOF 1

        STARTPAINT HMYWND&
        USEPEN 0,0,RND($FFFFFF)
        LINE 10,10 - 200,43
        ENDPAINT

        CASEOF 2

        STARTPAINT HMYWND&
        TEXTCOLOR RND($FFFFFF),~GetSysColor(15)
        DRAWTEXT 10,10,&GETTICKCOUNT
        ENDPAINT

    ENDSELECT

endproc


KompilierenMarqueSéparation

458 kB
Hochgeladen:30.08.2008
Downloadcounter163
Download
 
30.08.2008  
 



 
- page 1 -


Nö, ist völlig korrekt avec XPSE.

la fenêtre soll sur 0 erstellt volonté (oberste plaine) avec cela es aussi sûrement dans qui Tastkbar landet - et qui paramètre entre ,, peux seulement 0 son. cela klappt mais seulement derrière Klammern et entre Kommas...

XPSE traduit es doch aussi korrekt, ou bien?

tu peux avec XPSE écrivons:
KompilierenMarqueSéparation
et qui ausgekommaten 4 paramètre sommes arrêt 0... (sichert mais aussi seulement, cela - si dans qui Zielfunktion aucun pCount-Prüfung incorporé ist - qui übergebenen paramètre aussi wirklich 0 sommes)
 
31.08.2008  
 



Frank Abbing
quoi oui c'est ca soll qui Code manifester?


avec cela peux on sicheres threadähnliches Verhalten Programmieren, bzw. ist es hierfür une simplification.

Blockierende Apis peut avec cela naturellement pas überrumpelt volonté.
 
31.08.2008  
 




Jörg
Sellmeyer
si Je l' zweien Code comme prf-Dossier per Drag & Drop sur XPSE ziehe erhalte je cette Code:
KompilierenMarqueSéparation
proc __xpse__endofprogram__

    REM {{SOMEEXTRAENDCOMMAND}}
    end

endproc

DECLARE __cf1&,__cf2&,__cf3&,__cf4&,__cf5&
Def __cf1(2) !"KERNEL32","GetProcAddress"
Def __cf2(1) !"KERNEL32","GetModuleHandleA"
__cf1&=__cf1(__cf2("user32.dll"),"SetClassLongA")
__cf2&=__cf1(__cf2("user32.dll"),"LoadCursorA")
__cf3&=__cf1(__cf2("user32.dll"),"SetTimer")
__cf4&=__cf1(__cf2("user32.dll"),"KillTimer")
__cf5&=__cf1(__cf2("user32.dll"),"GetSysColor")
WINDOWSTYLE 80 | 512 | 1024
WINDOW %MAXX,%MAXY - 0,0
SHOWWINDOW(%HWND,0)
WINDOWSTYLE 1 | 2 | 4 | 8 | 16 | 512
var HMYWND&=(CREATE("WINDOW",(),"Zuckertest 3.0",(100),(100),(200),(350)))
!!!!!
var HPIC&=CREATE("hNewPic",64,64,$FFFFAA)
var HDSK&=CREATE("text",HMYWND&,"",,,$FFFF,$FFFF)
!!!!!
var HSTATBAR&=CREATE("statusWindow",HMYWND&,"Bereit.")
USERMESSAGES $0010,$0014
MYWND.RESIZING()
call(__cf1&,HMYWND&,-12,call(__cf2&,,32512))
SUBCLASS HMYWND&,1
call(__cf3&,HMYWND&,55100,100,)
call(__cf3&,HMYWND&,55101,500,)

WHILE 1

    WAITINPUT

    SELECT %UMESSAGE

        CASEOF $0010

        SELECT %MWND

            CASEOF HMYWND&

            BREAK

        ENDSELECT

    ENDSELECT

ENDWHILE

call(__cf4&,HMYWND&,55100)
call(__cf4&,HMYWND&,55101)
__xpse__endofprogram__

proc SUBCLASSPROC

    SELECT SWND

        CASEOF HMYWND&

        SELECT SMESSAGE

            CASEOF 532,$0005

            MYWND.RESIZING()

            CASEOF $0113

            SELECT SWPARAM

                CASEOF 55100

                DEMO(1)

                CASEOF 55101

                DEMO(2)

            ENDSELECT

        ENDSELECT

    ENDSELECT

endproc

proc MYWND.RESIZING

    SETWINDOWPOS HSTATBAR&=0,0 - 0,0
    DEMO(1)
    DEMO(2)

endproc

proc DEMO

    PARAMETERS MODE&

    SELECT MODE&

        CASEOF 1

        STARTPAINT HMYWND&
        USEPEN 0,,RND($FFFFFF)
        !!!!!
        LINE 10,10 - 200,43
        ENDPAINT

        CASEOF 2

        STARTPAINT HMYWND&
        TEXTCOLOR RND($FFFFFF),call(__cf5&,15)
        DRAWTEXT 10,10,&GETTICKCOUNT
        ENDPAINT

    ENDSELECT

endproc

__xpse__endofprogram__
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.08.2008  
 



Ähä, qui neuste XPSE (mais hierbei aussi déjà un XPSE qui deutlich älter son peux) gibt mais folgenden Code
KompilierenMarqueSéparation
proc __xpse__endofprogram__

    PARAMETERS exitcode&
    REM {{SOMEEXTRAENDCOMMAND}}
    case %pcount=1 : end exitcode&
    end

endproc

DECLARE __cf1&,__cf2&,__cf3&,__cf4&,__cf5&
Def __cf1(2) !"KERNEL32","GetProcAddress"
Def __cf2(1) !"KERNEL32","GetModuleHandleA"
__cf1&=__cf1(__cf2("user32.dll"),"SetClassLongA")
__cf2&=__cf1(__cf2("user32.dll"),"LoadCursorA")
__cf3&=__cf1(__cf2("user32.dll"),"SetTimer")
__cf4&=__cf1(__cf2("user32.dll"),"KillTimer")
__cf5&=__cf1(__cf2("user32.dll"),"GetSysColor")
WINDOWSTYLE 80 | 512 | 1024
WINDOW %MAXX,%MAXY - 0,0
SHOWWINDOW(%HWND,0)
WINDOWSTYLE 1 | 2 | 4 | 8 | 16 | 512
!!!!!
var HMYWND&=(CREATE("WINDOW",(0),"Zuckertest 3.0",(100),(100),(200),(350)))
var HPIC&=CREATE("hNewPic",64,64,$FFFFAA)
var HDSK&=CREATE("text",HMYWND&,"",0,0,$FFFF,$FFFF)
!!!!!
var HSTATBAR&=CREATE("statusWindow",HMYWND&,"Bereit.")
USERMESSAGES $0010,$0014
MYWND.RESIZING(à class=s2>)
...
Im Moment tippe je encore puis cela Du vlt. une doch déjà dans qui Monate gekommenen XPSE benutzt!??
 
31.08.2008  
 



 
- page 2 -



Jörg
Sellmeyer
Im Moment bekomme je cela trop voyons, si je XPSE starte:



Gestern runtergeladen.

[offtopic]cela Feature avec dem Dateibrowser, si je dans cela champ "Datei à Beitrag anhängen" klicke, ist oui entier gentil. maintenant peux je mais nix plus per Tasttatur ou bien Strg + V eingeben. [/offtopic]

30 kB
Hochgeladen:31.08.2008
Downloadcounter225
Download
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.08.2008  
 



qui Dialog ist aussi normal - venez chez chacun (zunächst fremden) Dossier si cela Windows-Dateisystem qui Dossier pas comme "eigene" erkennt - hat avec xpse selbst mais rien trop 1faire. qui XPSE-Version bekommst Du heraus si Du XPSE simple la fois avec Programme, ou bien im CMD startest.

[offtopic]
Jörg Sellmeyer
cela Feature avec dem Dateibrowser, si je dans cela champ "Datei à Beitrag anhängen" klicke, ist oui entier gentil. maintenant peux je mais nix plus per Tasttatur ou bien Strg + V eingeben.


c'est aucun meiner Erfindungen mais une des FireFox - là habe je keinen Einfluss sur elle.

FireFox "tut maintenant so" um es Angriffen - comment z.B. unerwünschtes Envoyer par "scripts" - schwieriger trop faire.

je find aussi tant pis cela avec cela z.B. un Strg+V seulement encore allez sur "Durchsuchen" -> Strg+V -> {enter}

[/offtopic]
 
31.08.2008  
 




Jörg
Sellmeyer
si XProfan que voici kennt: var HMYWND&=(CREATE("WINDOW",(0),"Zuckertest 3.0",(100),(100),(200),(350))) ,ensuite ist cela sur jeden le cas à mir vorbeigegangen.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.08.2008  
 



NULL comme Parent-Handle hat imho rien avec XProfan trop 1faire, et naturellement weiss Windows oui c'est ca quoi je avec cela mon et reagiert aussi korrekt indem es cela la fenêtre sur 0 (racine) erstellt. quoi Spricht vers NULL comme Fensterparent?
 
31.08.2008  
 




Jörg
Sellmeyer
Ah, si cela so ist. mon XPSE-Version était réellement quelque chose vieilli.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
31.08.2008  
 



Besonders chez XPSE peux je seulement toujours wieder anmerken cela wirklich ne...aucune Update übergangen volonté sollte...
 
31.08.2008  
 




Stefan
M.
Caillet
allô iF,
si du cela maintenant aussi encore so hinbekommst, dass es aussi ausserhalb des waitinputs fonctionne, la hâte du den Ersatz pour qui MSX-Interval Inc.
Gruss Stefan
 
Ich habe grosses Glück, weil ich Mitmenschen helfen darf.
Entwicklungsumgebung:
XProfan11 , Win XP Pro 32Bit , Win XP Home ,Win7 HomePremium 64Bit
PC: P4/3GHz , 2GB RAM , 1700GB HD
Laptop: Intel Core 2 Duo /2,2GHz , 4GB RAM , 500GB HD
13.11.2008  
 



exposition la fois, encore einfacher comme qui msx-interval.inc ist qui thread-unit [...]  , beide mettons sur qui settimer-api sur.

Im Unterschied seulement zur msx-interval.inc ist qui thread-unit bestückt avec quelque chose Sicherheit et Bedienungsanleitung verteilt sur Threads, mais aussi cet beiden Dinge peut qui Absturzgefahr seulement vermindern.

ProcAddr ist momentan pour Enumerationsapis vorgesehen. Es pour setTimer trop verwenden, et encore ausserhalb des Waitinput, peux toujours crashen, solange XProfan cela (encore) pas explizit handhaben peux.

exposition, selbst Rolands Implementation des SubClassings funktioniert seulement im WaitInput.

Irgendwann wird Roland là ran doit.
 
13.11.2008  
 




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

11.497 Views

Untitledvor 0 min.
Walter30.12.2022
RudiB.16.02.2022
Tango06.08.2021
Jörg Sellmeyer16.06.2020
plus...

Themeninformationen



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