On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение



Пост N: 91
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 25.03.13 06:58. Заголовок: Вид фориы в разных ОС и темах


Цель – сделать программу не зависящей от операционной системы
(от XP до W8) и установленной темы. Если текущие параметры окна
(заголовок, бордюр, высота меню) определить можно, то с такими
элементами как toolbar и statusbar у меня возникли трудности. Сколько
не бился так и не смог найти способ определить их высоту.
Может кто-нибудь уже сталкивался с этой проблемой?


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 4 [только новые]


постоянный участник




Пост N: 191
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.03.13 10:24. Заголовок: alex_II пишет:Если т..


alex_II пишет:
 цитата:
Если текущие параметры окна
(заголовок, бордюр, высота меню) определить можно, то с такими
элементами как toolbar и statusbar у меня возникли трудности. Сколько
не бился так и не смог найти способ определить их высоту.
Может кто-нибудь уже сталкивался с этой проблемой?


Используйте:
nHandleSplitBox := _DefineSplitBox(cFormName) вместо DEFINE SPLITBOX и
nHeightSplitBox := GetWindowHeight(nHandleSplitBox)
nHandleStatus := GetControlHandle('STATUSBAR', cFormName) и
nHeightStatus := GetWindowHeight(nHandleStatus)



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 92
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 25.03.13 11:21. Заголовок: SergKis пишет: nHan..


SergKis пишет:

 цитата:
nHandleSplitBox := _DefineSplitBox(cFormName) вместо DEFINE SPLITBOX и
nHeightSplitBox := GetWindowHeight(nHandleSplitBox)


Со statusbar всё понвтно, а вот с toolbar я не понял как это использовать.
Поясните пожалуйста подробнее.
Toolbar описан так:
DEFINE SPLITBOX
DEFINE TOOLBAR ToolBar_main BUTTONSIZE 32,32 FLAT
BUTTON Button_Exit PICTURE 'exit32' ACTION GoOut()
...
END TOOLBAR

DEFINE TOOLBAR ToolBar_ls CAPTION Space(35)
@ -8,w_main-190 LABEL Label_ls WIDTH 175 HEIGHT 56 SIZE 30 RIGHTALIGN
END TOOLBAR
END SPLITBOX



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 192
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 25.03.13 13:26. Заголовок: alex_II пишет:Со sta..


alex_II пишет:
 цитата:
Со statusbar всё понвтно, а вот с toolbar я не понял как это использовать


ToolBar такой же контрол - с ним можно GetWindowHeight(getControlHandle('ToolBar_ls', cFormName)), но toolbar у Вас на SPLITBOX - надо размер его. В DEFINE SPLITBOX (i_splitbox.ch) вызов _DefineSplitBox(cFormName), возвращающая handle. Я делаю так:
DEFINE WINDOW &cWndNam ;
...
hSplBox := _DefineSplitBox(cWndNam) // DEFINE SPLITBOX
DEFINE TOOLBAR &cTbarNam1 OF &cWndNam ...
...
END TOOLBAR
DEFINE TOOLBAR &cTbarNam2 OF &cWndNam ...
...
END TOOLBAR
_EndSplitBox() // END SPLITBOX
...
nHeightToolBar := GetWindowHeight(hSplBox)
...



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 93
Зарегистрирован: 12.07.06
ссылка на сообщение  Отправлено: 26.03.13 05:20. Заголовок: SergKis пишет: Tool..


SergKis пишет:

 цитата:
ToolBar такой же контрол - с ним можно GetWindowHeight(getControlHandle('ToolBar_ls', cFormName)), но toolbar у Вас на SPLITBOX - надо размер его. В DEFINE SPLITBOX (i_splitbox.ch) вызов _DefineSplitBox(cFormName), возвращающая handle. Я делаю так:


Спасибо за разъяснение, всё получилось

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 555
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет