AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Windows 7 Taskbar ein-/ausblenden

Ein Thema von Andidreas · begonnen am 29. Jun 2015 · letzter Beitrag vom 29. Jun 2015
Antwort Antwort
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#1

Windows 7 Taskbar ein-/ausblenden

  Alt 29. Jun 2015, 09:31
Hallo zusammen,

ich habe letzte Woche im Internet nach Routinen zum ausblenden der Taskbar gesucht (Funktion wird benötigt damit das Programm auf dem ganzen Bildschirm angezeigt wird).
Mein Problem bestand dann hauptsächlich darin, das die Startfläche von Windows nicht ausgeblendet wurde, d.h. die Taskbar war weg, aber der runde Kreis mit Windows Logo war noch da.

Nach ein bißchen Such hab ich im Internet noch eine Lösung gefunden wie man das Windows Logo ausblendet, Funktioniert soweit alles wunderbar, ich hab nur noch einen kosmetischen Fehler.

Wenn ich die Taskbar ausblende und dann wieder einblende, dann ist das Windows Start Symbol wieder da, aber wenn ich auf das Windows Start Symbol klicke dann verschwindet dies und an der Stelle ist dann nur ein grauer Button mit "Start". Hat jemand eine Idee woran das liegen könnte?

Anbei mein Source:

Delphi-Quellcode:
procedure prShowTaskBar(blShow : Boolean);

var
wndTaskbar : THandle;
hApp, hWinMenuBtn : HWND;
rcApp, rcWork : TRect;

begin

  wndTaskbar := FindWindow('Shell_TrayWnd', nil);
  If (wndTaskbar <> 0) Then
  Begin
    If (blShow) Then
    Begin
      //Taskbar
      EnableWindow(wndTaskbar, True);
      ShowWindow(wndTaskbar, SW_SHOW);
      //Windows Menu Button
      hWinMenuBtn := FindWindowEx(GetDesktopWindow, 0, 'Button', nil);
      ShowWindow(hWinMenuBtn, 1);
      Windows.SetParent(hWinMenuBtn, wndTaskbar);

      //prepare a default fullscreen workarea
      rcWork.Top:=0;
      rcWork.Left:=0;
      rcWork.Bottom:= GetSystemMetrics(SM_CYSCREEN);
      rcWork.Right:= GetSystemMetrics(SM_CXSCREEN);
      //get the taskbar handle
      hApp := FindWindow('Shell_TrayWnd', '');
      if hApp <> 0 then begin
        //get the size of the taskbar
        GetWindowRect(hApp, rcApp);
        //cut the workarea to place the taskbar
        if rcApp.Right<rcWork.Right then
          rcWork.Left:=rcApp.Right;
        if rcApp.Bottom<rcWork.Bottom then
          rcWork.Top:=rcApp.Bottom;
        if rcApp.Left>0 then
          rcWork.Right:=rcApp.Left;
        if rcApp.Top>0 then
          rcWork.Bottom:=rcApp.Top;
      end;
      SystemParametersInfo (SPI_SETWORKAREA, 0, @rcWork, SPIF_SENDCHANGE );
    End Else
    Begin
      //Taskbar
      EnableWindow(wndTaskbar, False);
      ShowWindow(wndTaskbar, SW_HIDE);
      //WindowsButton
      hWinMenuBtn := FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil);
      ShowWindow(hWinMenuBtn, 0);
      Windows.SetParent(hWinMenuBtn, 0);

      rcWork.Top:=0;
      rcWork.Left:=0;
      rcWork.Bottom:=GetSystemMetrics(SM_CYSCREEN);
      rcWork.Right:=GetSystemMetrics(SM_CXSCREEN);
      SystemParametersInfo (SPI_SETWORKAREA, 0, @rcWork, SPIF_SENDCHANGE);
    End;
  End;

end;
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Benutzerbild von markus5766h
markus5766h

Registriert seit: 5. Mär 2009
Ort: Hamburg
569 Beiträge
 
Delphi XE8 Professional
 
#2

AW: Windows 7 Taskbar ein-/ausblenden

  Alt 29. Jun 2015, 09:55
... nur mal kurz probiert :

gleiches Ergebnis.

Und : Fenster, die in den negativen Bereich verschoben wurden (egal wie weit und warum), werden dann in der Position (Top) auf 0 gesetzt.
Markus H.
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Windows 7 Taskbar ein-/ausblenden

  Alt 29. Jun 2015, 10:14
Funktion wird benötigt damit das Programm auf dem ganzen Bildschirm angezeigt wird
Und warum reicht dir das nicht?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
   BorderStyle := TFormBorderStyle.bsNone;
   WindowState := TWindowState.wsMaximized;
end;
  Mit Zitat antworten Zitat
zagota

Registriert seit: 3. Sep 2014
38 Beiträge
 
#4

AW: Windows 7 Taskbar ein-/ausblenden

  Alt 29. Jun 2015, 10:41
Möglich wäre noch,

FormStyle = StayOnTop
top := 0;
Left := 0;
Width := Screen.Width;
Height := Screen.Height;
  Mit Zitat antworten Zitat
Benutzerbild von Andidreas
Andidreas

Registriert seit: 27. Okt 2005
1.110 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#5

AW: Windows 7 Taskbar ein-/ausblenden

  Alt 29. Jun 2015, 12:17
Funktion wird benötigt damit das Programm auf dem ganzen Bildschirm angezeigt wird
Und warum reicht dir das nicht?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
   BorderStyle := TFormBorderStyle.bsNone;
   WindowState := TWindowState.wsMaximized;
end;
Geht leider nicht weil ich die Border benötige!

Möglich wäre noch,

FormStyle = StayOnTop
top := 0;
Left := 0;
Width := Screen.Width;
Height := Screen.Height;
Hab ich auch schon versucht, bringt leider auch nicht das gewünschte Ergebnis.

... nur mal kurz probiert :

gleiches Ergebnis.

Und : Fenster, die in den negativen Bereich verschoben wurden (egal wie weit und warum), werden dann in der Position (Top) auf 0 gesetzt.
Das versteh ich jetzt nicht ganz was Du damit meinst
Ein Programmierer Programmiert durchschnittlich 15 Code Zeilen pro Tag
Wir sind hier doch nicht bei SAP!!!

Aber wir habens bald
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz