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
 
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
 


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 07:21 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