![]() |
zugriff auf die form sperren während mainmenü geöffnet ist
Hi @ all!
ich möchte bei meinem Programm verhindern, dass ein Zugriff auf die Form/auf eine komponente nicht möglich ist solange das mainmenu geöffnet/aktiviert ist. Ist das möglich? (es reicht auch vollkommen aus wenn man die mausklicks sperrrt bzw. ereignisse, wie onclick,onmousemove,onmouseover,onmouseup nicht zulässt) Ein kleiner Source Quode als Beispiel wäre hilfreich da ich noch nicht sehr lange mit delphi arbeite... Vielen Dank schonmal im Vorraus für jede Antwort! |
Re: zugriff auf die form sperren während mainmenü geöffnet i
Vieleicht solltest Du dazu schreiben warum das so sein soll, oder was Du damit bezweckst.
|
Re: zugriff auf die form sperren während mainmenü geöffnet i
hmm okay also die antwort is realtiv simpel. Ich schreibe eine Oberfläche für ein Damespiel. Nun habe ich die Figuren als TIAEverButtons realisiert und ihnen mittels onmousedown,onmousemove,onmouseup eine Drag&Drop-Funktion verliehen. Allerdings habe ich das Problem, dass wen ich das wenn ein Rgaister meines MainMenus geöffnet ist und ich gleichzeitig eine Figur anklicke folgende Fehlermemldung ausgeben wird: "Zugiffsverletzung bei Adresse 0042A088 in Modul 'dame.exe'. Lesen von Adresse 00000040."
Ich hoffe ich konnte weiterhelfen. Danke schonmal für die Antwort! =) |
Re: zugriff auf die form sperren während mainmenü geöffnet i
Dann solltest Du vieleicht erst einmal versuchen diesen Fehler zu beheben als den Zugriff auf die Form zu verhindern.
|
Re: zugriff auf die form sperren während mainmenü geöffnet i
hab ich schon versucht, allerdings wäre es mir sowieso lieber, dass man die figuren nicht verschieben kann, solange das mainmenu geöffnet ist. Falls es allerdings sehr aufwendig ist die Form/die Ergeinisse zu sperren, kann ich natürlich mal den source code posten und Du kannst versuchen den Fehler zu beseitigen, weil ich bin da echt mit meinem Latein am Ende, aber wie gesagt mir wäre es lieber den Zugriff auf die Form zu sperren. Kommt halt darauf an mit wieviel Aufwand das ganze verbunden ist.
|
Re: zugriff auf die form sperren während mainmenü geöffnet i
so ich hab mal folgendes code-schnipsel gefunden, dass das überpüfen,ob das TMainMenu geöffnet ist, möglich macht:
Delphi-Quellcode:
quelle:
type
TForm1 = class(TForm) // ... private IsMenuOpen: Boolean; procedure WMMENUSELECT(var message: TWMMENUSELECT); message WM_MENUSELECT; end; implementation procedure TForm1.WMMENUSELECT(var message: TWMMENUSELECT); begin inherited; IsMenuOpen := not ((message.MenuFlag and $FFFF = 0) and (message.Menu = 0)); end; ![]() allerdings ganz verstehen tu ich den code nicht und leider war auch keine Erklärung dabei. Mich würde interssieren ob es hier möglich ist eine bollean oder so einzubauen die solange auf true ist solange das TMainMenu geöffnet ist. Oder vielleicht ist hiermit sogar direkt möglich eine bestimmte Prozedure zu sperren solange das TMainMenu geöffnet ist. Hoffe, dass mir jemand weiterhelfen kann... |
Re: zugriff auf die form sperren während mainmenü geöffnet i
Wenn der Benutzer bei geöffnetem Menü auf dein Formular klickt / Drag&Drop einleitet, schließt sich das Menü doch von selbst. Wo gibt es denn da ein Problem? Zumal es eigentlich keinen Unterschied für das Formular macht, ob ein Menü geöffnet ist oder nicht.
Wenn deine Button-Komponente in so einem Fall abstürzt, kann ich dir einen guten Tipp geben: Wirf sie weg. |
Re: zugriff auf die form sperren während mainmenü geöffnet i
das hät ich schon längst gemacht wenn ich ne alternative hätte...weil die komponente ist echt vielseitg und sehr praktisch...außerdem hab ich keine lust das ganze programm nochmal komplett umzuschreiben..aber du hast schon recht: bei standard komponenten tritt der fehler nicht auf....hm weis blos net wo ich eine gute alternative herbekomm...
ich bräuchte eigentlich ein shape, dass noch mehr formen annehmen kann und wenn möglich noch bitmaps aufnehmen kann, wie ein Bitbutton, aber am wichtigsten ist wie gesagt die zusätzlichen formen...sollte halt so was wie ein kreuz dabei sein, was ne dame darstellt...kennt jemand so ne komponente oder kann man sowas auch anderes erreichen? |
Re: zugriff auf die form sperren während mainmenü geöffnet i
Image?
|
Re: zugriff auf die form sperren während mainmenü geöffnet i
image ist nicht so gut weil ich dann hinter dem kreis/kreuz einen weißen hintergrund hab, wenn man den wegbekommen könnte wärs super/perfekt^^, ansonsten nicht geeignet...
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:54 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz