jak sprawdzic, ktory dialog jest na wierzchu?

0

Pisze program, ktory wyswietla niemodalne okna dialogowe.
Problem w tym, ze chcialbym, kiedy uzytkownik zamknie jedno z wielu okienek, ktore jest na ekranie, focus przezucic, na to, ktore jest na samym wierzchu, tak, zeby nie trzebabylo klikac na jego pasek systemowy. Uprosciloby by mi to sprawe. W tej chwili zauwazylem, ze focus dostaje ponownie glowne okno programu.

pozdrawiam
Mariusz

0

A SetFocus()?

0

set focus ustawia focus na jakies okno, to nie to o co mi chodzi.
ale wytlumacze jeszcze raz.
powiedzmy, ze na glownym oknie programu wyswietlone jest kilka okien niemodalnych. uzytkownik zamyka jedno z nich, na ktorym pracowal. w tej sytuacji windows ustawia mi fukus na glownym oknie programu. kilka okien jednak pozostaja otwartych, jednak zadne nie ma fokusu. teraz chcialbym dowiedziec sie, ktore okno jest na samym wierzchu i ustawic na nim fokus recznie.

pozdrawiam
Mariusz

0

Az sie sam zaczalem zastanawiac czy jest taka funkcja. :) Szczerze mowiac nigdy nie trafilem na taki problem.
W sumie mozna sprawdzic, ktore okno jest na wierzchu troszke okrezna droga.
Mianowicie pobierasz device context kazdego z okien, ich wymiary i sprawdzasz funkcja RectVisible. Funkcja zwroci ci prawde dla okna, ktore nie jest przysloniete zadnym innym.

Ale ide o zaklad, ze bedzie pewnie jakas latwiejsza metoda :)

[dopisane]
Chociaz lepsza metoda bedzie zapamietanie, ktore okno mialo ostatnio focusa ustawionego i na nie po zamknieciu jakiegos okienka znow ustawianie focusa.

0

propozycja z RectVisible dziala znakomicie. dzieki za pomysl.
Mariusz

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