![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 08.05.2007
Сообщений: 5
|
![]()
Подскажите, пожалуйста, как сделать так, чтобы прога находилась поверх всех окон вслучае, когда в чекбоксе стоит флажок. Соответственно, когда флажок снят - у проги обычное поведение.
|
![]() |
![]() |
#2 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]()
SetWindowPos(Handle,
HWND_TOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE);
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
#3 |
Регистрация: 08.05.2007
Сообщений: 5
|
![]()
после того как я этот кусок вставил в событие, действительно прога после установки флажка стала оставаться поверх всех окон. Выглядит так:
procedure TForm2.CheckBox1Click(Sender: TObject); begin if CheckBox1.Checked then SetWindowPos(Handle, HWND_TOPMOST, Left, Top, Width, Height, SWP_NOACTIVATE or SWP_NOMOVE or SWP_NOSIZE); end; ... ... после снятия флажка прога все равно остается поверх всех окон. как это можно изменить? Что не так? Вероятно, нужно что-то написать в else, но вот что? Последний раз редактировалось puz; 11.05.2007 в 15:02. |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 03.11.2006
Сообщений: 321
|
![]()
procedure TForm1.CheckBox1Click(Sender: TObject);
begin if form1.CheckBox1.Checked=true then form1.FormStyle:=fsStayOnTop else form1.FormStyle:=fsNormal; end; |
![]() |
![]() |
#5 |
Регистрация: 08.05.2007
Сообщений: 5
|
![]()
Спасибо. Как же все легко, оказывается. Всегда поражаюсь, как сам не догадался? Ну ничего, молодой ишшо.
|
![]() |
![]() |
#6 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]() Код:
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 02.02.2007
Сообщений: 29
|
![]()
Я это обычно немного проще делал:
procedure Form1.CheckBoxClick(Sender: TObject); begin if (Sender as TCheckBox).Checked then begin Form1.FormStyle := fsStayOnTop; Form1.OnPaint := FormPaint; else begin Form1.FormStyle := fsNormal; Form1.OnPaint := nil; end; end; procedure Form1.FormPaint(Sender: TObject); begin Application.RestoreTopMosts; end; ![]()
Быстро пойманный эксепшн исключением не считается
|
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Поверх всех окон | delphin100 | Общие вопросы Delphi | 2 | 19.04.2008 19:00 |
Поверх всех окон | Патрон | Общие вопросы Delphi | 1 | 18.04.2008 16:57 |
форму поверх всех окон | КатенокСПб | Общие вопросы Delphi | 2 | 26.07.2007 17:48 |
Форма поверх всех окон (!!!) | Viteef | Общие вопросы Delphi | 12 | 29.06.2007 00:22 |
Форма поверх всех окон. | Kamikadze_666 | Общие вопросы Delphi | 1 | 16.05.2007 07:10 |