![]() |
Startbutton aktivieren/deaktivieren
Moin,
ich benutze folgenden Code aus dem Easy Helper um den Startbutton (Windows) zu deaktivieren:
Delphi-Quellcode:
Das funktioniert auch so wie es sollte. Nur jetzt möchte ich das der Startbutton wieder aktiviert wird. Im Easy Helper steht das das erst wieder nach einem Systemneustart zurückgesetzt wird. Gibt es eine andere Möglichkeit den Startbutton wieder zu aktivieren ?
procedure SetStartBtnEnabled(const AEnabled: Boolean);
begin EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd',nil), 0, 'Button', nil), AEnabled); end; Thx |
Re: Startbutton aktivieren/deaktivieren
normalerweise sollte
Delphi-Quellcode:
deinen Wünschen nachkommen :gruebel:
SetStartBtnEnabled(true);
|
Re: Startbutton aktivieren/deaktivieren
Zitat:
Und mit
Delphi-Quellcode:
wird er aber nicht wieder aktiviert.
SetStartBtnEnabled(false)
? |
Re: Startbutton aktivieren/deaktivieren
Hallo Pierre,
Das Ergebnis ist wie erwartet: SetStartBtnEnabled(True) aktiviert den Startbutton, SetStartBtnEnabled(False) deaktiviert ihn. Getestet auf WinXP SP1 Greetz alcaeus |
Re: Startbutton aktivieren/deaktivieren
Hallo :hi:,
bei mir funktioniert es auch. (Win2000, SP4) Aber warum sollte man den StartButton deaktivieren? :gruebel: MfG freak |
DP-Maintenance
Dieses Thema wurde von "alcaeus" von "Sonstige Fragen zu Delphi" nach "Windows API / MS.NET Framework API" verschoben.
Ich geb dem Thema mal einen dezenten Schubs. Hat wohl mehr mit der WinAPI zu tun ;) |
Re: Startbutton aktivieren/deaktivieren
Zitat:
|
Re: Startbutton aktivieren/deaktivieren
Hallo zusammen,
Zitat:
Warum wird ein Boolean-Parameter als const übergeben?! Das macht (performance- & ressourcenmäßig) vielleicht bei Strings einen Sinn, aber doch nicht bei einem Boolean (nur 2 Byte, ein Pointer hat 4 Byte!)oder auch einem Integer (4 Byte <-> 4 Byte Pointer)... ?! Gruß + Dank, Marco |
Re: Startbutton aktivieren/deaktivieren
Hallo Marco,
das Schluesselwort const wird verwendet, um dem Programmierer der die Routine verwendet zu zeigen, dass ganz bestimmt nichts an der Variable geaendert wird. AFAIR laesst Delphi in dem Fall keine Zuweisung an die Variable innerhalb der Funktion zu. Bei einer "normalen" Uebergabe [Foo(bar: Integer)] ist dies nicht der Fall. Greetz alcaeus |
Re: Startbutton aktivieren/deaktivieren
Delphi braucht dann auch keinen Speicher, um eine Kopie des übergebenen Strings bereitzustellen, da dieser nicht geändert werden kann.
|
Re: Startbutton aktivieren/deaktivieren
Hallo ihr beiden,
Zitat:
Param: Typ: Param stellt eigene Variable dar, Wert wird in diesen Param von der Übergabe kopiert, d.h. Änderungen haben keine Auswirkungen auf die ursprünglichen Übergabevariable. var Param: Typ Param ist eigentlich ein Pointer, der auf Übergabe zeigt. Änderungen wirken sich auch auf Übergabevariable aus. const Param: Typ Param ist eigentlich ein Pointer, der auf Übergabe zeigt. Änderungen dürfen jedoch nicht vorgenommen werden. Wenn dem nicht so ist, klärt mich bitte auf :-D Zitat:
Gruß, Marco |
Re: Startbutton aktivieren/deaktivieren
Ich hab jetzt folgendes kleines testprogramm geschrieben
Delphi-Quellcode:
folgende Aufrufe brachten die ergebnisse (bei parameter 123):
procedure h(a: integer);
begin ShowMessage(IntToStr(a)); end; procedure a({const/var/nix}j: integer); assembler; asm push eax call h pop eax end;
Daraus schließe (ich zumindest), dass der Const-parameter also nur dem compiler sagt, dass dieser wert nie verändert werden wird, aber im eigentlichen bei der parameterübergabe kein unterschied liegt (zwischen const und nix). bei var wird hingegen klarerweise die adresse mitgegeben. Es kann aber auch gut sein, dass der const-parameter durch den compiler optimiert wird, dass bei Datentypen > Pointer der Zeiger darauf mitgegeben wird, nachdem der wert sowieso nicht veränder wird. |
Re: Startbutton aktivieren/deaktivieren
Zitat:
@all Warum diskutiert ihr das mit dem const hier aus. Macht doch einen neuen Thread auf. :shock: Und ein Mod macht bei dem OT auch noch mit :shock: |
Re: Startbutton aktivieren/deaktivieren
Hallo,
danke für deine Antowort, Mike! Zitat:
Ach ja: gibt's dann eigentlic auch sowas wie ein varconst? :stupid: @André: Sorry, schon gut! :zwinker: Aber deswegen einen eigenen Thread aufmachen... Wär auch doof. :-D Gruß, Marco |
Re: Startbutton aktivieren/deaktivieren
Zitat:
Greetz alcaeus |
Re: Startbutton aktivieren/deaktivieren
Um auch noch meinen Senf dazuzugeben: :-D
Das Deaktivieren des Startbuttons verhindert keinesfalls das öffnen des Startmenüs z.b. mit der Windows Taste, wenn es das ist, was du bezwecken willst. Florian |
Re: Startbutton aktivieren/deaktivieren
Zitat:
ja danke, hagtte ich auch schon rausgefunden. Ich hab die Taskleiste dann jetzt einfach ausgeblendet, und wenn ein User doch noch ins Startmenü will kann er immernoch nen Shortcut drücken. Vielen Dank für eure Antworten :hi: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:41 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