Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.06.2009, 14:23   #1
BuT@JL
Форумчанин
 
Регистрация: 27.11.2008
Сообщений: 137
По умолчанию Как проверить скрыто окно или нет?

Я понимаю что этот вопрос из детского сада, но как мне проверить скрыто окно или нет. Например я скрыл окно с помощью hide, как мне проверить if form1.hide=true then, че нить наподобие. помогите пожалуста, а то у меня башка уже не варит.
BuT@JL вне форума Ответить с цитированием
Старый 26.06.2009, 14:34   #2
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

ф-ия IsWindowVisible
Код:
procedure TForm1.Button1Click(Sender: TObject);
var hwnd: THandle;
begin
  hwnd := FindWindow('Form1', 'Органайзер');
  if IsWindowVisible(hwnd) then showmessage('видимое')
end;

Последний раз редактировалось SERG1980; 26.06.2009 в 14:37.
SERG1980 вне форума Ответить с цитированием
Старый 26.06.2009, 15:15   #3
BuT@JL
Форумчанин
 
Регистрация: 27.11.2008
Сообщений: 137
По умолчанию

SERG1980 я делаю вот так

procedure TForm1.Timer1Timer(Sender: TObject);
var hwnd: THandle;
begin
hwnd := FindWindow('Form1', 'Form1');
if IsWindowVisible(hwnd) then showmessage('невидимое');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
hide;
end;

Жму на button1 приложение скрывается, и должно было вывестись сообщение 'невидимое', но оно почему то не выводится
BuT@JL вне форума Ответить с цитированием
Старый 26.06.2009, 15:19   #4
Toxa
Форумчанин Подтвердите свой е-майл
 
Аватар для Toxa
 
Регистрация: 01.12.2006
Сообщений: 514
По умолчанию

Код:
if IsWindowVisible(hwnd) then 
 showmessage('видимое');
else
 showmessage('невидимое');
попробуй так
Пишу на Delphi за еду
Toxa вне форума Ответить с цитированием
Старый 26.06.2009, 15:43   #5
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var hwnd: THandle;
begin
hwnd := FindWindow('TForm1', 'Form1');
if IsWindowVisible(hwnd) then showmessage('видимое');
end;
или
Код:
procedure TForm1.Timer1Timer(Sender: TObject);
var hwnd: THandle;
begin
hwnd := FindWindow(nil, 'Form1');
if IsWindowVisible(hwnd) then showmessage('видимое');
end;
SERG1980 вне форума Ответить с цитированием
Старый 26.06.2009, 16:14   #6
Showy
Форумчанин Подтвердите свой е-майл
 
Аватар для Showy
 
Регистрация: 08.08.2007
Сообщений: 183
По умолчанию

Цитата:
Сообщение от BuT@JL Посмотреть сообщение
SERG1980 я делаю вот так

procedure TForm1.Timer1Timer(Sender: TObject);
var hwnd: THandle;
begin
hwnd := FindWindow('Form1', 'Form1');
if IsWindowVisible(hwnd) then showmessage('невидимое');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
hide;
end;

Жму на button1 приложение скрывается, и должно было вывестись сообщение 'невидимое', но оно почему то не выводится
Ваше сообщение выйдет если окно будет видимым, а не невидимым. Пишите
Код:
if not IsWindowVisible(hwnd) then showmessage('невидимое');
Until The End Of Time
Showy вне форума Ответить с цитированием
Старый 26.06.2009, 18:33   #7
BuT@JL
Форумчанин
 
Регистрация: 27.11.2008
Сообщений: 137
По умолчанию

Всё получилось. Спасибо большое
BuT@JL вне форума Ответить с цитированием
Старый 13.11.2009, 03:16   #8
TRIZER
Студент
Пользователь
 
Аватар для TRIZER
 
Регистрация: 13.11.2009
Сообщений: 65
По умолчанию

зачем париться с
Код:
FindWindow
если можно узнать handle через
Код:
form1.Handle
TRIZER вне форума Ответить с цитированием
Старый 13.11.2009, 06:05   #9
uberchel
Участник клуба
 
Аватар для uberchel
 
Регистрация: 19.01.2009
Сообщений: 1,453
По умолчанию

да ему же свой программы надо проверить, тагда так

Код:
if application.ShowMainForm then
ShewMessage('Show') 
else 
ShowMessage('Hide');
uberchel вне форума Ответить с цитированием
Старый 13.11.2009, 15:19   #10
856100
Форумчанин
 
Регистрация: 12.08.2008
Сообщений: 135
По умолчанию

А зачем такие сложности?
Код:
If form1.visible=true then Showmessage('Видимое') else Showmessage('скрыто');
Будь проще, бери пример с одноклеточных
856100 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как проверить запущено приложение или нет? kiber0net0 Общие вопросы Delphi 2 18.09.2008 19:48
Проверить существует ли путь и создать если его нет hoba PHP 6 29.08.2008 14:40
Есть или нет MAcK SQL, базы данных 3 27.05.2008 14:45
Лицензионное ПО или нет? pures Свободное общение 1 02.12.2007 06:34
как узнать что введено а Edit1 цифры или нет doncova1 Компоненты Delphi 9 05.02.2007 10:43