Entwickler-Ecke
Windows API - Taskleiste speren
SpeedyGTD - Do 25.07.02 03:09
Titel: Taskleiste speren
Morgen
ich will ein Programm ähnlich Novel NetWare schreiben, wie kann ich jetzt allerdings die Taskleiste speren? So dass man keinen Zugriff auf diese hat, bzw sie nicht sichtbar ist. :wink:
MFG SpeedyGTD
SpeedyGTD - Do 25.07.02 13:46
Titel: PS: funktioniert bei mir doch mit Windows XP
Danke für den link, weisst du ob das auch mit dem Startmenü geht? und wenn ja welchen Code ich dann benutzen muss.
Thx @ hitstec
zero - Sa 03.08.02 21:21
hi, ähh wollte nur mal meinen senf dazugeben, habe das gerade mal gestestet, und öhh wie soll ich sagen es geht unter XP doch... meine taskleiste ist wech :shock:
SpeedyGTD - So 04.08.02 02:12
Und was ist das Problem? kommt sie jetzt nicht wieder oder was? Dann mach sie wieder mit SW_SHOW sichtbar, ich hab das so gemacht, bei FormCreate wird sie Unsichtbar gemacht, und bei FormClose wieder sichtbar.
PS: Ich habe auch XP und bei mir geht das auch.
Mfg SpeedyGTD
zero - So 04.08.02 02:53
ja habe ich ja dann auch gemacht :)
nur währe es ja noch praktisch wenn man die windowstaste auch sperren könnte und dazu noch rechte maustaste auf dem desktop und das die Icons verschwinden... :)
ging unter 98 ja immer mit dem screensaver befehl, aber bei xp nicht, weißt du da auch irgendeine möglichkeit ? :?:
SpeedyGTD - So 04.08.02 14:57
Mit dem Desktop habe ich das so gemacht das ich einfach ein leeres Formular drauf gepackt habe das nicht geschlossen werden kann und die Windowstaste wird zusammen mit dem Windowsstartbutton gesperrt. Dieser Code stammt von [url]
http://www.swissdelphicenter.ch[/url] also
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25:
| procedure TForm1.ShowStartButton(bvisible: Boolean); var h: hwnd; TaskWindow: hwnd; begin if bvisible then begin h := FindWindowEx(GetDesktopWindow, 0, 'Button', nil); TaskWindow := FindWindow('Shell_TrayWnd', nil); ShowWindow(h, 1); Windows.SetParent(h, TaskWindow); end else begin h := FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil); ShowWindow(h, 0); Windows.SetParent(h, 0); end; end;
procedure TForm1.FormCreate(Sender: TObject); begin ShowStartButton(False); end; |
Ich denke allerdings das das Problem mit dem Desktop allerdings auch eleganter zu lösen geht.
Mfg SpeedyGTD
Maverick - So 04.08.02 23:31
also den desktop kriegt man mit
Quelltext
1:
| ShowWindow(FindWindow(nil,'Program Manager'),sw_hide); |
leer ('Program Manager' ist der Fenstername des Desktop-Hintergrundes)
die Task-Leiste würde ich mit
Quelltext
1:
| EnableWindow(FindWindow('Shell_TrayWnd', nil),false); |
deaktivieren
die windowstaste verliert mit eigentlich ihre wirkung, wenn man mit
SystemParametersInfo den wert von SPI_SETSCREENSAVEACTIVE auf true setzt, ich kenn nur die update-flag nicht
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!