Ĺadny brzuch
Witam
Zalezy mi aby moje aplikacja niezaleznie od innych aplikacji dzialajacych w tle byla zawsze na wierzchu i od jakiegos czasu próbuje to usttawic ale zadne z ustawienie formy na StayOnTop ani dodanie w Form Create
var
ExtendedStyle:Integer;
begin
ExtendedStyle:=GetWindowLong(Application.Handle, GWL_EXSTYLE);
SetWindowLong(Application.Handle,GWL_EXSTYLE,
ExtendedStyle or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
nie przynosi spodziewanych rezultatów, wygooglowałem juz kilkanascie podstron i zaden z opisanych sposobów nie działał skutczenie, wystarczyło otorzyc folder a juz aplikacja była "w tle"
Ktos zna SKUTECZNY sposob na ustawienie tego?
Dziękuje
Hmm a probowales "wywalac" Twoja aplikacje na wierzch jak nie jest (GetForegroundWidnow zdaje sie sprawdza co jest na wierzchu - aktywne)?
nie nie próbowałem a jak "wywalic" jak to określiłes ją na wierzch??
z tego co gotowe użyłem tylko StayOnTop
jest ktoś w stanie pomóc??
if GetForegroundWindow() <> handle then begin FormStyle := fsNormal; FormStyle := fsStayOnTop; end;
Kod 'wyrzuci' nam okienko na wierzch. Teraz jeszcze musisz wymyslic jak je uaktywnic :). Mozna kombinowac z kliknieciem myszka na nia, ale powinno sie dac jakas funkcja. Niestety nie dziala mi zadna z tych: BringWindowToTop, SetForegroundWindow, SetActivewindow. Popruboj, w koncu mysle ze znajdziesz jakis sposob ;). Chyba ze ktos zna.
Użytkownik Ali240 edytował ten post 12 styczeń 2007, 19:38
wrzuciłem to w FormCreatea [nic] kombinowałem chwile i wrzuciłem to w Timer i na szczeście działa, moze to nieekonomicznie pod względem działania aplikacji (sprawdzanie co jais czas) ale wywala okno na wierzch w porządku
licznik zegara co jakis czas zeruje sie i co jakis sprawdza czy aplikacja jest na wierzchu jesli jednak macie jeszcze ciekawszy pomysł jak to zrobić bez zegara - słucham
dzięki Ali240!
Zaloz hooka :). Ale pamietaj ze nadal nie masz jeszcze aktywnego okna...
może tak:
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0);
za: http://student.pb.bi...aq/faq2.html#39
może tak:
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0);
za: http://student.pb.bi...aq/faq2.html#39
Dziala tak samo jak to co podalem wczesniej, ale nadal nie uaktywani okienka :(.
no tak.. to co poradzicie ostatecznie?
tak jak piszecie, okienko nadal nieaktywne, a nie można tego ustawic jakos za pomocą "uchwytów" w Delphi
w ogole w Delphi (była artykuł o uchwytach dla C++ bodajze) w jaki sposob zadeklarowac je używac jesli można?
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Zalezy mi aby moje aplikacja niezaleznie od innych aplikacji dzialajacych w tle byla zawsze na wierzchu i od jakiegos czasu próbuje to usttawic ale zadne z ustawienie formy na StayOnTop ani dodanie w Form Create
var
ExtendedStyle:Integer;
begin
ExtendedStyle:=GetWindowLong(Application.Handle, GWL_EXSTYLE);
SetWindowLong(Application.Handle,GWL_EXSTYLE,
ExtendedStyle or WS_EX_TOOLWINDOW and not WS_EX_APPWINDOW);
nie przynosi spodziewanych rezultatów, wygooglowałem juz kilkanascie podstron i zaden z opisanych sposobów nie działał skutczenie, wystarczyło otorzyc folder a juz aplikacja była "w tle"
Ktos zna SKUTECZNY sposob na ustawienie tego?
Dziękuje
Hmm a probowales "wywalac" Twoja aplikacje na wierzch jak nie jest (GetForegroundWidnow zdaje sie sprawdza co jest na wierzchu - aktywne)?
nie nie próbowałem a jak "wywalic" jak to określiłes ją na wierzch??
z tego co gotowe użyłem tylko StayOnTop
jest ktoś w stanie pomóc??
if GetForegroundWindow() <> handle then begin FormStyle := fsNormal; FormStyle := fsStayOnTop; end;
Kod 'wyrzuci' nam okienko na wierzch. Teraz jeszcze musisz wymyslic jak je uaktywnic :). Mozna kombinowac z kliknieciem myszka na nia, ale powinno sie dac jakas funkcja. Niestety nie dziala mi zadna z tych: BringWindowToTop, SetForegroundWindow, SetActivewindow. Popruboj, w koncu mysle ze znajdziesz jakis sposob ;). Chyba ze ktos zna.
Użytkownik Ali240 edytował ten post 12 styczeń 2007, 19:38
wrzuciłem to w FormCreatea [nic] kombinowałem chwile i wrzuciłem to w Timer i na szczeście działa, moze to nieekonomicznie pod względem działania aplikacji (sprawdzanie co jais czas) ale wywala okno na wierzch w porządku
licznik zegara co jakis czas zeruje sie i co jakis sprawdza czy aplikacja jest na wierzchu jesli jednak macie jeszcze ciekawszy pomysł jak to zrobić bez zegara - słucham
dzięki Ali240!
Zaloz hooka :). Ale pamietaj ze nadal nie masz jeszcze aktywnego okna...
może tak:
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0);
za: http://student.pb.bi...aq/faq2.html#39
może tak:
SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, 0);
za: http://student.pb.bi...aq/faq2.html#39
Dziala tak samo jak to co podalem wczesniej, ale nadal nie uaktywani okienka :(.
no tak.. to co poradzicie ostatecznie?
tak jak piszecie, okienko nadal nieaktywne, a nie można tego ustawic jakos za pomocą "uchwytów" w Delphi
w ogole w Delphi (była artykuł o uchwytach dla C++ bodajze) w jaki sposob zadeklarowac je używac jesli można?