![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать высоту заголовка окон? [D5, Win95/98, WinME, WinXP]
TankMan © (2004-03-29 19:16:00)Вобщем-то насколько я знаю это значение получает через GetSystemMetrics, но какой параметр писать я даже и не знаю :(((
Игорь Шевченко (2004-04-08 10:38:00) [1]
> в инете я так и не нашел нормального описания процедуры
> GetThemePartSize :(
http://msdn.microsoft.com- вроде, нормальное описание
TankMan (2004-04-07 20:20:00) [2]Ну скажите хоть что-нибудь... в инете я так и не нашел нормального описания процедуры GetThemePartSize :(
(2004-04-03 15:37:00) [3]Удалено модератором
TankMan (2004-03-31 19:05:00) [4]Ааа вот начал разбиратся... и возникла проблема...GetThemeMetric - описание то есть, но откуда получить и что именно указывать в качестве параметров... я так и не допер :((... хоть и написано но не понятно - можно плз примерчик с этим GetThemeMetric? или GetThemePartSize...
TankMan (2004-03-31 17:49:00) [5]Аааа а я то думал :)...Ну все тогда - спасибо за помощь буду пробовать, как докачается....
Amoeba (2004-03-31 17:43:00) [6]
> прототип функции
Загляни в windows.pas и может-быть поймешь, с чем это едят...
Rouse_ (2004-03-31 17:43:00) [7]> [10] TankMan © (31.03.04 17:38)
Он тебе сказал не то что это прототип, а где его взять...
прототип - описание, декларация :)
TankMan (2004-03-31 17:38:00) [8]Погоди ты сказал что это прототип функции... что ты имелл ввиду?
Игорь Шевченко (2004-03-31 17:34:00) [9]TankMan © (31.03.04 17:29)
#ifdef FLAME
> Можете выслать мне пас в котором описаны эти процедуры?
Не то что не могу, а не хочу. Я в предыдущем посте указал ресурсы, где следует искать файлы, даже не поленился и имена назвал, а тебе лень зайти по этим ссылкам, и ты меня напрягаешь на то, чтобы я тебе выслал общедоступные файлы.
Насколько я понимаю, это твоя проблема - получение размера заголовка, а не моя и не форума.
#endif
---
LMD
TankMan (2004-03-31 17:29:00) [10]Т.е. GetSystemMetrics работает и в ХР?
Так... что то я не пойму... у меня мой дельфи 5 не узнает никакой GetThemeMetric и GetThemePartSize... это точно есть в Delphi5 может... а хотя 5 версия вышла до ХР... значит не может :)...
Можете выслать мне пас в котором описаны эти процедуры?
и еще что за "IsAppThemed"?
Игорь Шевченко (2004-03-31 17:19:00) [11]Ресурс? http://msdn.microsoft.com
Прототип функции можно взять на www.delphi-jedi.org, в разделе API translation, файл win32api.zip, unit, если не ошибаюсь, JwaUxTheme.pas
Обычно получение метрики в XP выглядит, как
begin
...
if IsAppThemed then
Result := GetThemeMetric(.....) или GetThemePartSize (.....)
else
Result := GetSystemMetric(....)
...
end;
Rouse_ (2004-03-31 17:16:00) [12]Retrieves the value of a metric property.
Syntax
HRESULT GetThemeMetric( HTHEME hTheme,
HDC hdc,
int iPartId,
int iStateId,
int iPropId,
int *piVal
);
Parameters
hTheme
[in] Handle to a window's specified theme data. Use OpenThemeData to create an HTHEME.
hdc
[in] Handle to a device context (HDC). This parameter may be set to NULL.
iPartId
[in] Value of type int that specifies the part that contains the metric property. See Parts and States.
iStateId
[in] Value of type int that specifies the state of the part. See Parts and States.
iPropId
[in] Value of type int that specifies the property to retrieve. See Property Types
piVal
[out] Pointer to an int that receives the metric property value.
Return Value
Returns S_OK if successful, or an error value otherwise.
Function Information
Stock Implementation UxTheme.dll
Custom Implementation No
Header uxtheme.h
Import library UxTheme.lib
Minimum operating systems Windows XP
TankMan (2004-03-31 17:11:00) [13]А где можно посмотреть по этому справку какую нибудь? Может есть ресурс какой в инете?
Игорь Шевченко (2004-03-31 17:11:00) [14]Юрий Зотов © (29.03.04 19:32)
GetThemeMetric
TankMan (2004-03-31 17:07:00) [15]А Жаль :(( что не помните :(... я хотел и для ХР сделать нормально чтоб было...
Юрий Зотов (2004-03-29 19:32:00) [16]Еще момент - в XP при включенной поддержке тем обычная GetSystemMetrics может дать неверный результат. Там используется какая-то своя, но точного название не помню.
Юрий Зотов (2004-03-29 19:29:00) [17]Насколько помню:
SM_CYCAPTION - для обычных окон;
SM_CYSMCAPTION - для инструментальных окон (проверяется через наличие флага WS_EX_TOOLWINDOW в расширенном стиле окна - см. GetWindowLong и GWL_EXSTYLE).