Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблемы с перерисовкой контролов и форм


Antonn ©   (2005-01-19 06:59:00) 

Здравствуйте, коллеги. Мучает проблема с перерисовкой окон и контролов. Появляется случайным образом. Имею на форме Манифест и form1.doublebuffered:=true; Проявляется так: запускаю программу и по Alt+Tab переключаюсь на другое окно. потом щелкаю по caption своей проги и она ессно выходит на передний план, но на контролах рисуется снимок окна, который был перед этим на переднем плане. В чем проблемма? я уже замучился..
ЗЫ XP_SP1, D7


Antonn   (2005-01-21 04:13:00) [1]

Knight ©   (20.01.05 18:50) [6]
потому-что все мерцает. Там TNottebook(не помню точное название) и на нем куча компанентов и собственной перерисовкой(listbox и stringGrid).


Knight   (2005-01-20 18:50:00) [2]


> Antonn ©   (19.01.05 06:59)

А нафих тебе Даблбуфер?


Antonn   (2005-01-20 17:14:00) [3]

я так просто не отстану:)


Antonn   (2005-01-19 11:52:00) [4]

up


TButton   (2005-01-19 08:27:00) [5]

"какой хитрый человек" (с)ДМБ
я пас


Antonn   (2005-01-19 07:24:00) [6]

не помогает. Проясню ситуацию точнее. У меня 2 формы. В первой форме я ловлю WM_WINDOWPOSCHANGING и отправляю на передний план {SetWindowPos(Handle,HWND_TOPmost,Left,Top,Width,Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE );}
Так же на первой форме есть ТБаттон, при нажатии на который происходит Form2.show; Форма2 появляется нормально(первый раз вообще все нормально). Потом переключаюсь на другую программу, и первая форма как положенно постоянно сверху, вторая форма где-то сзади потерялась(как по идее и должно быть). Теперь щелчек на первой форме. Моя прога должна выйти на передний план, и она выходит, но вторая форма совсем не перерисовывается автоматически. Обновляется только если первой формой "провести" над ней. Пробовал так(ради интереса): в еще одной кнопке на первой форме делал form2.repaint/form2.invalidate/form2.refresh. Никаких изменений на второй форме.


TButton   (2005-01-19 07:08:00) [7]

ну не перерисовывается окно твоё
пропиши в onActivate Repaint и будет тебе счастье.


Наверх

Титульная страница Поиск, карта сайта Написать письмо