Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Startmenü-Problem (https://www.delphipraxis.net/8072-startmenue-problem.html)

CoDeR_MaCHiNe 28. Aug 2003 01:46

Re: Startmenü-Problem
 
ja aber ich habe entdeckt das man wahrscheinlich über den butto gehen muss wenn mann wissen will wo es sich öffnet.
habe gerade etwas interessantes gefunden:
Delphi-Quellcode:
MoveWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil), 300, 0, 80, 22, true);
wenn ich jeze anstatt der 300 bzw. 0 jetzt die koordinaten meines
buttons im fenster nehme müsste es eigentlich gehen. oder ?

Luckie 28. Aug 2003 01:48

Re: Startmenü-Problem
 
Damit schiebst du den Startbutton durch die Gegend. Ich wäre nicht so begeistert, ihn mitten auif dem Desktop wiederzufinden.

CoDeR_MaCHiNe 28. Aug 2003 01:49

Re: Startmenü-Problem
 
das würde ich ja dann wieder zurück schieben, wenn ich rausgfunden habe wie des geht...

Luckie 28. Aug 2003 02:01

Re: Startmenü-Problem
 
Also es ist ja so: Du brauchst das Handle vom Menü, um es verschieben zu können. Aber so lange es das Menü nicht gibt, gibt es auch kein Handle. Das gibt es erst, wenn es aufpoppt und dann ist es zu spät. Desweitern müßtets du ständig kucken, ob jemand auf den Stratbutton geklcikt hat oder die Windows-Taste gedrückt hat. Diese wäre mir für so eien Spielerei zu aufwendig bzw. als Anwender zu Ressourcen fressend. Da mußt du jetzt wohl ohne mich durch.

CoDeR_MaCHiNe 28. Aug 2003 02:05

Re: Startmenü-Problem
 
mh...
ich schlaf ertsmal ne nacht drüber :)
mal gucken wies morgen aussieht.
aber trotzdem danke erstmal.

Luckie 28. Aug 2003 02:25

Re: Startmenü-Problem
 
Ich habe die Befürchtung, wenn du morgen aufwachst wird sich an der Situation nichts geändert haben.

CoDeR_MaCHiNe 28. Aug 2003 10:52

Re: Startmenü-Problem
 
und da hast du leider recht...

ich habe jeze nämlich folgendes problem das
mein start-button nicht mehr aktiviert ist
somit kann ich mein startmenü auch nicht mehr
aufklappen lassen...

Aya 28. Aug 2003 13:22

Re: Startmenü-Problem
 
Hi,

ich hab gestern Nacht mal ne Funktion gebastelt um das Handle vom StartMenü zu ermitteln.. klappt allerdings nur wenn es bereits sichtbar ist. (SetWindowPos klappt wunderbar um das Menü zu verschieben)

Delphi-Quellcode:
function GetStartMenuHandle: HWND;
var
  h: HWND;
  lpClassName: PChar;
begin
  Result:=0;
  GetMem(lpClassName,256);
  h:=GetWindow(GetDesktopWindow,GW_CHILD);
  while h<>0 do begin
    GetClassName(h,lpClassName,256);
    if lpClassName='BaseBar' then begin
      if GetWindowLong(h,GWL_STYLE) = -1774190592 then
        if GetWindowLong(h,GWL_EXSTYLE) = 392 then begin
          Result:=h;
          Exit;
        end;
    end;
    h:=GetWindow(h,GW_HWNDNEXT);
  end;
  FreeMem(lpClassName);
end;
Au'revoir,
Aya~

CoDeR_MaCHiNe 28. Aug 2003 14:14

Re: Startmenü-Problem
 
danke dir erstmal ...

aber ich bekomm das trotzdem irgendwie ned hin.
könnteste mir bitte auch die zeilen zeigen mit dem
setwindowpos ?

Aya 28. Aug 2003 16:29

Re: Startmenü-Problem
 
Hi,

Delphi-Quellcode:
    h:=GetStartMenuHandle;
    SetWindowPos(h,HWND_TOPMOST,Mouse.CursorPos.X,Mouse.CursorPos.Y,0,0,SWP_NOSIZE);
geht natürlich nur wenn das StartMenü sichtbar ist.

Au'revoir,
Aya~


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:33 Uhr.
Seite 2 von 3     12 3      

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