application.active

0

witam,
w jaki <ort>Najprostrzy </ort>sposob zrobic by moja aplikacja stala sie aktywna? mam zacme, i nic znalezc nie moge :/ pewnie mozna wziac uchwyt okna i dac show, ale czy nie ma lepszego sposobu? A chodzi mi glownie o to, ze mam messagebox'y i ich nie widac jesli aplikacja jest np zminimalizowana, lub znajduje sie pod innymi oknami, chce zeby komunikaty byly zawsze na wierzchu, nad wszystkimi oknami. dzieki

<ort>ps.
ChanServ- [#4programmers] Witaj na kanale serwisu http://4programmers.net, zyczymy kulturalnej i przyjemnej rozmowy.
heh...</ort>

// Trza się było po ludzku zachowywać - Q
// tzn. jak?
// Kulturalnie - Q

0

a może SetForegroundWindow(Form.Handle); czy jakos tak to szło

0

jakos to kiepsko dziala, a wlasciwie to to nie dziala :(

0

Spróbuj tak :

SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0); //okno będzie na samej górze, nawet jak masz inne aktywne aplikacje otwarte
Application.Restore; //jeśli masz aplikację zwiniętą do paska, to ci się z niego rozwinie.
showmessage('komunikat'); //lub też messagebox :)
0
berl napisał(a)

Spróbuj tak :

SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0); //okno będzie na samej górze, nawet jak masz inne aktywne aplikacje otwarte
Application.Restore; //jeśli masz aplikację zwiniętą do paska, to ci się z niego rozwinie.
showmessage('komunikat'); //lub też messagebox :)

mozna tez dac po prostu form1.show ale o to chodzi, ze komunikaty maja byc widoczne rowniez wtedy gdy visible:=false;
macie jeszcze jakis pomysly?

0

Może wywołaj te messagebox'y jako pochodne pulpitu?

MessageBox( GetDesktopWindow(), 'Działa! :D', 'Okienko', MB_OK or MB_ICONEXCLAMATION );

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