| |
|
|
Nico Madysa | Es était oui seulement une Frage qui Zeit: j'ai wieder la fois Ärger avec Waitinput. nous prenons comme Grundlage folgenden Code: KompilierenMarqueSéparationdeclare dlg& , on% , w%
on% = 0
cls
dlg& = Create(Window,%hWnd ,Dialog,300,300,300,100)
ShowWindow(dlg&,on%)
whilenot IsKey(27)
waitinput
inc w%
Locate 0 , 0
print w%
if IsKey(78)
if on%
ShowWindow(dlg&,0)
on% = 0
else
ShowWindow(dlg&,1)
on% = 1
endif
SetFocus(%hWnd) <---SetFocus-Zeile
endif
wend
end
il pouvoir rien d'autre, comme cela un Dialogfenster à-/ausgeschalten wird, allerdings dans qui selben Boucle comment cela Hauptfenster fonctionne. c'est maintenant très joli, on drückt einmal N, qui Dialog taucht auf; on drückt nochmal N et il verschwindet wieder. si on mais qui SetFocus-la ligne(s. dessus) entfernt, ou bien pour dem ersten N-Druck den Dialog anklickt, ist qui l'affaire moins lustig. il peut cela N totdrücken sans dass qui Dialog wieder verschwindet. et qui Variable w% zeigt pourquoi. Pour chaque Waitinput wird vous um 1 augmenté. Im Dialogfenster geschieht ca pas. c'est unser altes Problem: cela WaitInput reagiert pas.
Anmerkung 1: je voudrais maintenant aucun APIs comment GetASyncKey ou bien so haben; es liegt nämlich définitif pas à qui Tastenabfrage, mais am waitinput. Anmerkung 2: cela Problem habe je pas gesucht, mais es trat dans einem größerem Programme de mir auf; GetMessage peux je pas verwenden, là ensuite autre Dinge dans mon Programme pas marcher würden. |
|
|
| |
|
|
|
| |
|
| |
|
|
|
Nico Madysa | merci, iF! j'ai mir presque gedacht, dass quelque chose comme avec Usermessages allez, mais je hab qui numéro qui Message dans qui Profan.hlp pas trouvé -_- (anstatt Je l' En-tête verwende, mais sur quelque chose comme viens je naturellement pas...) Allerdings taucht dabei un neuer faute sur. si un Button den Concentrer hat, reagiert cela Programme beim Druck sur N pas. Stattdessen gibt qui PC une hübschen Klopfton mittels internem le haut-parleur de sich. So seul ist cela ne...aucune réel Problem, mais dummerweise besteht cet mon komplettes Hauptfenster un (Toolbar-air arrêt). Wäre pas un Button deaktiviert gewesen(mittels EnableWindow) wäre je wohl pas derrière elle gekommen. car si je sur cette klicke, hat aucun plus den Concentrer, là il ihn oui pas avons darf.
P.S.: Finde je vraie gentil de dir, dass du toi trotz deiner bösen Erältung à Probleme anderer kümmerst! |
|
|
| |
|
|
|
| oui mir gehts hundeehlend bien cela mich aucun voyons peux - mais merci! |
|
|
| |
|
|
|
Nico Madysa | Mahahaha, wieso hab eigentlich toujours je qui ganzen Probleme avec Waitinput? KompilierenMarqueSéparationdeclare dlg& , buta& , butb& , on% , w%
on% = 0
cls
buta& = Create(Button,%hWnd,Button 1,0,0,320,240)
butb& = Create(Button,%hWnd,Button 2,320,0,320,240)
EnableWindow butb& , 0
dlg& = Create(Window,%hWnd ,Dialog,300,300,300,100)
ShowWindow(dlg&,on%)
whilenot IsKey(27)
waitinput
inc w%
Locate 0 , 0
print w%
if IsKey(78)
if on%
ShowWindow(dlg&,0)
on% = 0
else
ShowWindow(dlg&,1)
on% = 1
endif
SetFocus(%hWnd)<---SetFocus-Zeile
endif
wend
end
Annähernd derselbe Code, comment qui erste, seulement cela maintenant deux Buttons cela Hauptfenster belegen; un normaler et un deaktivierter. Sobald cela Programme gestartet hat, faisons folgendes: Wir drücken zweimal sur N et, comment erwartet, erscheint qui Dialog et verschwindet wieder. eh bien klicken wir sur den ersten Button, sodass il den Concentrer bekommt et drücken wieder N et - rien passiert. Hat un Button alors den Concentrer, scheint Waitinput wiedermal pas trop réagir. Klicken wir dagegen sur den deaktivierten Button, so verscheindet qui Concentrer, là un deaktiviertes Contrôle oui keinen Concentrer avons darf, et - tada! - qui Dialog erscheint avec einem Druck sur N wieder. j'ai cela Problem dans mon Programme erstmal avec qui la ligne KompilierenMarqueSéparation mais wirklich zufrieden suis je avec cela pas.
Hat quelqu'un qui Solution des Problems? Ist es mon Schuld ou bien qui de XProfan? j'ai dummerweise seulement im Verlauf qui letzten semaine avec cela experimentiert et peux daher aussi seulement dire, dass es wahrscheinlich pas am Dialogfensterstil meines Hauptfensters liegt. |
|
|
| |
|
|
|
| Hab grad un un peu Zeit. So? KompilierenMarqueSéparationdeclare dlg& , buta& , butb& , on% , w%
on% = 0
cls
buta& = Create(Button,%hWnd,Button 1,0,0,320,240)
butb& = Create(Button,%hWnd,Button 2,320,0,320,240)
EnableWindow butb& , 0
dlg& = Create(Window,%hWnd ,Dialog,300,300,300,100)
ShowWindow(dlg&,on%)
whilenot IsKey(27)
WaitInputEx
inc w%
Locate 0 , 0
print w%
if IsKey(78)
if on%
ShowWindow(dlg&,0)
on% = 0
else
ShowWindow(dlg&,1)
on% = 1
endif
SetFocus(%hWnd)<---SetFocus-Zeile
endif
wend
end
Proc WaitInputEx Erweitertes Waitinput für Dialoge von AH
Declare AHWait_Counter%
Clear AHWait_Counter%
While AHWait_Counter%<25
inc AHWait_Counter%
wend
@External(USER32,MsgWaitForMultipleObjects,0,0,0,-1,$1 | $4 | $10)
Clear AHWait_Counter%
While AHWait_Counter%<25
inc AHWait_Counter%
wend
../function-references/XProfan/endproc/'>endproc
|
|
|
| |
|
|
|
| |
|
| |
|
|
|
GDL | Muss je aussi juste ausprobieren.Ärgere mich avec nem RTF zurzeit vert et bleu.
salut Georg |
|
|
| |
|
|
|
Nico Madysa | merci pour qui schnellen Hilfen, sobald je wieder am eigenen calculateur sitze werde ego ausprobieren. |
|
|
| |
|
|
|
Nico Madysa | Tschuldigung, hab malheureusement oublier qc, trop dire, dass qui Hotkey-variante geklappt hat. Momentan habe je wieder la fois Ärger avec dem Waitinput et qui XProfan-internen Messageverwaltung. Aus certain Trouvé suis je eh bien gezwungen, plusieurs Controls einem Static ou bien meinetwegen einer GroupBox direct unterzuordnen. comment bereits desöfteren erwähnt, reagiert Profan sur Eingaben dans sochen Enkelfenstern (Kindfenster qui Kindfenster) pas plus so, comment on es gern hätte. Gibt es là une API ou bien une anderen Trick, um z.B. qui Messages dans cela Hauptfenster umzuleiten ou bien quelque chose dans qui Art? qui Win32.hlp hat mir bisher aucun Aider donner voulons.
P.S.: und dir ici speziell um un ReBar-Contrôle (aussi sous dem Namen Docksplitter bekannt) je voudrais ici einem ReBar-ruban plusieurs Controls zuweisen. |
|
|
| |
|
|
|
| |
|
| |
|
|
|
Uwe ''Pascal'' Niemeier | allô Nico!
Verwende statt Groupbox ou bien Static une rahmenlosen Dialog, etwa dans cette Art:
| | Dlg&=control(Dialog,Dlg1,$50000000,0,0,Breit%,Hoch%,%hwnd,1,0) |
Hat sich chez mir bewährt, wobei Breite et Hauteur chez Verwendung dans Rebars pas la fois gesetzt volonté doit.
HTH Pascal |
|
|
| |
|
|