Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.06;
Скачать: CL | DM;

Вниз

включить auto-hide taskbar на Делфи   Найти похожие ветки 

 
Ландграф Павел ©   (2005-09-01 12:11) [0]

Подскажите как программно включить/выключить эту опцию, при условии совместимости со всеми версиями начиная с 98.


 
xmed ©   (2005-09-02 15:09) [1]

procedure TaskBar( Turn:Boolean );
var
   hTaskBar : THandle;
begin
   hTaskbar := FindWindow( "Shell_TrayWnd", Nil );
   if Turn then begin
       ShowWindow( hTaskBar, SW_SHOWNORMAL );
   end else begin
       ShowWindow( hTaskBar, SW_HIDE );
   end;
end


 
Ландграф Павел ©   (2005-09-02 17:25) [2]

Енто не то... можешь проверить сам и найти отличия=) када SW_HIDE то эту панельку оттуда уже никак не вытащишь, а мне надо чтобы именно AUTO-hide, т.е. мышильду опускаем вниз - панелька выехала


 
xmed ©   (2005-09-02 17:43) [3]

тода Regedit там надо искать


 
Ландграф мобил=)   (2005-09-02 19:50) [4]

Нашел, но в каждой винде по разному=(


 
Турист   (2005-09-03 12:56) [5]

Вроде работает


const
 ABM_SETSTATE = $0000000a;

procedure AutoHideTaskBar(aAutoHide: Boolean);
var
 BarData: TAppBarData;
 dwState, dwNewState: DWord;
begin
 FillChar(BarData, SizeOf(BarData), 0);
 BarData.cbSize := SizeOf(BarData);
 dwState := SHAppBarMessage(ABM_GETSTATE, BarData);
 if aAutoHide then
   dwNewState := dwState or ABS_AUTOHIDE
 else
   dwNewState := dwState and not ABS_AUTOHIDE;
 if dwState <> dwNewState then begin
   BarData.lParam := dwNewState;
   SHAppBarMessage(ABM_SETSTATE, BarData)
 end
end;



 
Турист   (2005-09-03 13:27) [6]

>Турист   (03.09.05 12:56) [5]
К сожалению, для Windows XP


 
Турист   (2005-09-03 16:34) [7]

:-)


procedure HardAutoHideTaskBar(aAutoHide: Boolean);
var
 bNewState: Byte;
 Buffer: array[0..255] of Byte;
 hExplorer: THandle;
 dwExplorerID: DWord;
 dwSettingsSize: DWord;
begin
 with TRegistry.Create do try
   if OpenKey("Software\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2", False) or
      OpenKey("Software\Microsoft\Windows\CurrentVersion\Explorer\StuckRects", False) then begin
     dwSettingsSize := ReadBinaryData("Settings", Buffer, SizeOf(Buffer));
     if (dwSettingsSize > 0) then begin
       if aAutoHide then
         bNewState := Buffer[8] or 1
       else
         bNewState := Buffer[8] and not 1;
       if bNewState <> Buffer[8] then begin
         Buffer[8] := bNewState;
         WriteBinaryData("Settings", Buffer, dwSettingsSize);
       end
     end
   end
 finally
   Free
 end;
 if GetWindowThreadProcessId(FindWindow("Shell_TrayWnd", nil), dwExplorerID) <> 0 then begin
   hExplorer := OpenProcess(SYNCHRONIZE or PROCESS_TERMINATE, FALSE, dwExplorerID);
   if hExplorer <> 0 then try
     TerminateProcess(hExplorer, 0)
   finally
     CloseHandle(hExplorer)
   end
 end;
 if GetWindowThreadProcessId(FindWindow("Shell_TrayWnd", nil), dwExplorerID) = 0 then
   WinExec("explorer.exe", SW_SHOWNORMAL)
end;


 
Ландграф Павел ©   (2005-09-03 18:36) [8]

СенькЫсь! под 98 буду отдельно писать.. или плюнуть на них!?=)



Страницы: 1 вся ветка

Текущий архив: 2005.11.06;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.043 c
14-1129287728
! Han!
2005-10-14 15:02
2005.11.06
Материал


14-1129623533
pazitron_brain
2005-10-18 12:18
2005.11.06
Что такое BBS?


8-1119343306
Josefina
2005-06-21 12:41
2005.11.06
Проблемы со свуком


6-1117384270
Flame
2005-05-29 20:31
2005.11.06
проблемка с twebbrowser


1-1129182020
pmi1
2005-10-13 09:40
2005.11.06
Изменям Edit, при этом картинка не портится





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский