19 Maret 2009

Sembunyikan Tombol Start Windows

Ini trik jaman dulu waktu aku kuliah yang tidak lama ini aku pake lagi buat fitur pada programku. Setelah nyari sudah payah (mesti nyari diantara puluhan CD, ribuan file, wuik…) akhirnya ketemu juga. Dulu buat mainan, sekarang buat hal yang serius. Caranya simpel aja, cuma hati-hati, nanti bisa nyembunyikan tapi ga bisa balikin, repot ntar musti restart lagi.
procedure SimSalabimStartMenu(aKeliatan: Boolean);
var
  h, TaskWindow: HWND;
begin
  if aKeliatan then // show
  begin
    h := FindWindowEx(GetDesktopWindow, 0, 'Button', nil);
    TaskWindow := FindWindow('Shell_TrayWnd', nil);
    ShowWindow(h, 1);
    Windows.SetParent(h, TaskWindow);
  end
  else // hide
  begin
    h := FindWindowEx(FindWindow('Shell_TrayWnd', nil), 0, 'Button', nil);
    ShowWindow(h, 0);
Windows.SetParent(h, 0);
  end;
end;

Tombol Start hilang tapi taskbarnya tetap kelihatan, kok jelek ya, bolong gitu. Mau nyembunyikan taskbar sekalian bisa. Untuk menyembunyikan dan menampilkan lagi:
ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_HIDE); // hide
ShowWindow(FindWindow('Shell_TrayWnd', nil), SW_SHOWNA); // show

Tidak ada komentar:

Posting Komentar