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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.09.2010, 02:49   #1
Vikenty
Заслуженный флудер
Участник клуба
 
Аватар для Vikenty
 
Регистрация: 31.03.2010
Сообщений: 1,473
По умолчанию Как узнать высоту панели задач

Как в Delphi узнать высоту панели задач?
Vikenty вне форума Ответить с цитированием
Старый 15.09.2010, 03:07   #2
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

А зачем вам это?

Есть подозрение на X, Y, Z.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
GunSmoker вне форума Ответить с цитированием
Старый 15.09.2010, 03:25   #3
Vikenty
Заслуженный флудер
Участник клуба
 
Аватар для Vikenty
 
Регистрация: 31.03.2010
Сообщений: 1,473
По умолчанию

Цитата:
Сообщение от GunSmoker Посмотреть сообщение
А зачем вам это?

Есть подозрение на X, Y, Z.
я все правильно написал "как получить высоту панели задач"
нужно для помещения окна в правом нижнем углу экрана...
Vikenty вне форума Ответить с цитированием
Старый 15.09.2010, 09:30   #4
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Используй ClientHeight и ClientWidth
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 15.09.2010, 09:31   #5
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Используй ClientHeight и ClientWidth, они показывают высоту и ширину рабочего пространства, то есть без панели задач
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 15.09.2010, 09:37   #6
MaxNik2009
Форумчанин
 
Аватар для MaxNik2009
 
Регистрация: 17.09.2009
Сообщений: 294
По умолчанию

Можно так:
Код:
procedure TForm3.Button1Click(Sender: TObject);
var
  wnd: HWND;
  Rect: TRect;
begin
  wnd:= FindWindow('Shell_TrayWnd', nil); // ищем панель
  if wnd <> 0 then
  begin
    GetWindowRect(wnd, Rect); // определяем размер найденной панели
    ShowMessage(IntToStr(Rect.Bottom));
  end;
end;
принимаю благодарности в письменном виде( весы слева)...

Последний раз редактировалось MaxNik2009; 15.09.2010 в 09:39.
MaxNik2009 вне форума Ответить с цитированием
Старый 15.09.2010, 09:50   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Было уже. Обсуждалось и не раз:
http://yandex.ua/yandsearch?text=ShA...ASKBARPOS%2C+t
%29%3B&tld=ua&lr=20554&site=www.pro grammersforum.ru
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.09.2010, 11:10   #8
chertovich
Форумчанин
 
Аватар для chertovich
 
Регистрация: 26.07.2009
Сообщений: 489
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Было уже. Обсуждалось и не раз:
http://yandex.ua/yandsearch?text=ShA...ASKBARPOS%2C+t
%29%3B&tld=ua&lr=20554&site=www.pro grammersforum.ru
Повторение - мать учения.
Если в глубине души вы программист, то, следуя своим наклонностям, вы захотите написать кусок кода.
chertovich вне форума Ответить с цитированием
Старый 15.09.2010, 15:51   #9
GunSmoker
Старожил
 
Регистрация: 13.08.2009
Сообщений: 2,581
По умолчанию

Цитата:
Сообщение от Vikenty Посмотреть сообщение
я все правильно написал "как получить высоту панели задач"
нужно для помещения окна в правом нижнем углу экрана...
(Вздох) Да ни черта вы не правильно написали.

Ваша задача - разместить окно в правом-нижнем углу экрана. Вот это и надо было писать.

Для этого не нужно получать высоту Панели задач (панель задач может быть пристыкована справа, или справа может быть добавлена дополнительная панель).

Вам нужно получить размер рабочей области монитора - это часть, свободная от всех панелей. Сделать это можно, например, через GetMonitorInfo. Вас будет интересовать поле rcWork.

Или можно использовать объект Screen. Вас интересуют свойство WorkareaRect.

P.S. Откуда видно, что ответы chertovich, MaxNik2009 и Stilet - неверны и вредны.

P.P.S. Я только что спас вашу душу от огней ада, а руки - от создания говно-кода.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.

Последний раз редактировалось GunSmoker; 15.09.2010 в 16:00.
GunSmoker вне форума Ответить с цитированием
Старый 15.09.2010, 16:53   #10
Vikenty
Заслуженный флудер
Участник клуба
 
Аватар для Vikenty
 
Регистрация: 31.03.2010
Сообщений: 1,473
По умолчанию

Цитата:
Сообщение от GunSmoker Посмотреть сообщение
(Вздох) Да ни черта вы не правильно написали.


P.S. Откуда видно, что ответы chertovich, MaxNik2009 и Stilet - неверны и вредны.

P.P.S. Я только что спас вашу душу от огней ада, а руки - от создания говно-кода.
зачем такие грубости??
WorkAreaRect - то что нужно, спс
Vikenty вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как убрать окно из панели задач? Seven[up] Win Api 3 10.08.2010 01:19
Как скрыть программу из панели задач? BARS1991 Общие вопросы C/C++ 5 28.12.2009 19:38
Как убрать себя с панели задач. Alex Cones Общие вопросы Delphi 2 27.12.2009 16:13
Как скрыть окно на панели задач? Gerzs Общие вопросы Delphi 9 19.11.2009 16:42
как спрятать прогу на панели задач aesoem Общие вопросы Delphi 4 05.08.2008 17:47