"Pin To Desktop"

Odpowiedz Nowy wątek
pain42
2006-08-26 11:48
pain42
0

Witam.
Czy wie ktoś może jak przypiąć aplikację do pulpitu (przeciwieństwo StayOnTop)? Coś takiego jest na przykład w aplikacji Samuraize (ewidentnie napisanej w Delphi).

Z góry dziękuję za pomoc.

Pozostało 580 znaków

2006-08-26 11:52

Rejestracja: 16 lat temu

Ostatnio: 1 rok temu

pain42
2006-08-26 12:18
pain42
0

Chodzi o to, że aplikacja zostaje pod wszystkimi oknami. Jest tak jakby "przypięta do pulpitu".
W StayOnTop aplikacja jest nad wszystkimi oknami zawsze widoczna, a w tym przypadku jest odwrotnie. "Widać" ją tylko, gdy widoczny jest pulpit(no chyba, że jest częściowo zakryta jakimiś oknami). Samuraize to program do modyfikacji pulpitu, umożliwia umieszczenie różnych informacji na pulpicie (coś jak jest w Linuxie) na przykład prognozy pogody, RSS feedu itd. Z tym, że są to zwykłe aplikacje, a nie jakieś rysowanie po pulpicie, czy modyfikacja tapety.

Pozostało 580 znaków

2006-08-26 13:21

Rejestracja: 17 lat temu

Ostatnio: 4 lata temu

0

mozesz przypiac do pulpitu w ten sposob:
mozliwosc 1:

procedure TForm1.FormCreate(Sender: TObject);
begin
Windows.SetParent(Form1.Handle, FindWindow('progman',nil));
end;

czyli po prostu okno pulpitu staje sie rodzicem Twojej formy.
tyle, ze jak Ci padnie explorer to wtedy zniknie i Twoje okno.
wiec powninienes ta operacje wykonac po kazdym ponownym uruchomieniu explorera.

mozliwosc 2:

procedure TForm1.FormActivate(Sender: TObject);
begin
SetWindowPos(Form1.Handle, HWND_BOTTOM, 0,0,0,0, SWP_SHOWWINDOW or SWP_NOMOVE or SWP_NOSIZE);
end;

czyli twoje okno ba byc pod wszystkimi innymi oknami.

pozdro [browar]

Pozostało 580 znaków

pain42
2006-08-26 14:04
pain42
0

Dzięki, działa doskonale.

Pozdrawiam
[browar]

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0