
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
10.11.2007, 11:45
|
|||
|---|---|---|---|
|
|||
Command [кнопка]: Важный вопрос |
|||
|
#18+
Здраствуйте. В некоторых кнопках для выбора цвета,как например в MSWord,поверх кнопок рисуются цветные прямоугольники. Я думаю что они выводятся на hDC через WinAPI функции (SetDIBitsToDevice например). При использовании стиля "Graphical" у кнопки пропадает стиль... Как правильно реализовать данную задачу? Если можно то дайте исходник (на любом языке). Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
10.11.2007, 17:08
|
|||
|---|---|---|---|
Command [кнопка]: Важный вопрос |
|||
|
#18+
P.R.O.M.A.R.K, для этого можно применить приём под названием subclassing, и перекрыть процедуру перерисовки окна кнопки. Пример в приложенном файле. Прим.: не стОит жать кнопку "Стоп" во время отладки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.11.2007, 06:55
|
|||
|---|---|---|---|
|
|||
Command [кнопка]: Важный вопрос |
|||
|
#18+
Большое спасибо! Я об этом уже думал,но у меня небольшой опыт в SubClass' инге... А это реально сделать через SetDIBitsToDevice например ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.11.2007, 07:07
|
|||
|---|---|---|---|
|
|||
Command [кнопка]: Важный вопрос |
|||
|
#18+
БенедиктP.R.O.M.A.R.K, для этого можно применить приём под названием subclassing, и перекрыть процедуру перерисовки окна кнопки. Пример в приложенном файле. Прим.: не стОит жать кнопку "Стоп" во время отладки. Когда я нажимаю на кнопку прямоугольник исчезает, как я это понимаю передается вругое сообщение... Пожалуйста кинь исправленный исходник, где этот прямоугольник не исчезает при клике и др.сообщениях... Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.11.2007, 11:13
|
|||
|---|---|---|---|
Command [кнопка]: Важный вопрос |
|||
|
#18+
P.R.O.M.A.R.KА это реально сделать через SetDIBitsToDevice например ?Можно использовать любые функции GDI. P.R.O.M.A.R.KКогда я нажимаю на кнопку прямоугольник исчезает, как я это понимаю передается вругое сообщение... Пожалуйста кинь исправленный исходник, где этот прямоугольник не исчезает при клике и др.сообщениях...У меня перерисовка всегда выполняется правильно, непонятно, что править. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.11.2007, 11:39
|
|||
|---|---|---|---|
|
|||
Command [кнопка]: Важный вопрос |
|||
|
#18+
БенедиктУ меня перерисовка всегда выполняется правильно, непонятно, что править. Тогда зачем ты поставил на форму Command2. Я нажимаю на Command1,зеленый прямоугольник пропадает... Я нажимаю на Command2 для того что бы фокус пропал,зеленый прямоугольник появляется... Какое сообщение обрабатывать, что бы прямоугольник рисовался всегда? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.11.2007, 11:49
|
|||
|---|---|---|---|
Command [кнопка]: Важный вопрос |
|||
|
#18+
P.R.O.M.A.R.K, Command2 - просто, чтоб была для сравнения. Версия с манифестом, и задействующая Common Controls в приложенном файле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.11.2007, 12:07
|
|||
|---|---|---|---|
|
|||
Command [кнопка]: Важный вопрос |
|||
|
#18+
БенедиктP.R.O.M.A.R.K, Command2 - просто, чтоб была для сравнения. Версия с манифестом, и задействующая Common Controls в приложенном файле. Спасибо,работает. Но, мог бы ты мне объяснить... Что такое manifest,как его сделать, почему активировались XP стили и почему прямоугольник не исчезает. Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
13.11.2007, 12:01
|
|||
|---|---|---|---|
Command [кнопка]: Важный вопрос |
|||
|
#18+
P.R.O.M.A.R.K, манифест - это XML-файл, говорящий ОС, что данная программа использует визуальные стили. Он может быть отдельным файлом с именем ИмяИсполняемогоФайла.exe.manifest, либо ресурсом, включённым в исполняемый модуль (см. приложенный файл). Прямоугольник перестал исчезать потому, что стало приходить "лишнее" сообщение WM_PAINT при подключении стилей. Ты был прав, при смене состояния кнопки приходит другое сообщение, теперь это учитывается. См. приложенный файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2007, 12:16
|
|||
|---|---|---|---|
|
|||
Command [кнопка]: Важный вопрос |
|||
|
#18+
БенедиктP.R.O.M.A.R.K, манифест - это XML-файл, говорящий ОС, что данная программа использует визуальные стили. Он может быть отдельным файлом с именем ИмяИсполняемогоФайла.exe.manifest, либо ресурсом, включённым в исполняемый модуль (см. приложенный файл). Прямоугольник перестал исчезать потому, что стало приходить "лишнее" сообщение WM_PAINT при подключении стилей. Ты был прав, при смене состояния кнопки приходит другое сообщение, теперь это учитывается. См. приложенный файл. Бенедикт,спасибо за объяснения. Я раньше,всегда,вставлял в ресурс файл XPSTYLE.res и в расделе инициализации прописывал "InitCommonControls". Скажи стоит ли использовать manifest в shareware программах? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
15.11.2007, 12:16
|
|||
|---|---|---|---|
|
|||
Command [кнопка]: Важный вопрос |
|||
|
#18+
БенедиктP.R.O.M.A.R.K, манифест - это XML-файл, говорящий ОС, что данная программа использует визуальные стили. Он может быть отдельным файлом с именем ИмяИсполняемогоФайла.exe.manifest, либо ресурсом, включённым в исполняемый модуль (см. приложенный файл). Прямоугольник перестал исчезать потому, что стало приходить "лишнее" сообщение WM_PAINT при подключении стилей. Ты был прав, при смене состояния кнопки приходит другое сообщение, теперь это учитывается. См. приложенный файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=60&mobile=1&tid=2163083]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
65ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 351ms |

| 0 / 0 |
