Здравствуйте, delphinchik, Вы писали:
D>Если у кнопки TSpeedButton установить Enabled = False то Glyph автоматически скрывается. Меня такое поведение не устраивает, нужно чтобы кнопка просто становилась недоступной, текст кнопки ведь никуда не пропадает, почему тогда пропадает рисунок? Суть в том, что в пользовательских настройках программы можно сделать так, чтобы на кнопках отоюражались только иконки без надписей, в некоторых режимах кнопки могут быть недоступны, а их цвет по дизайну программы такой же как и фоновый, поэтому бывают ситуации когда некоторых кнопок на панели управления абсолютно не видно, и тогда программа приобретает страшный вид, получается как будто кнопки разбросаны по панели где попало, хотя на самом деле остальных кнопок просто не видно. Я вижу решение проблемы в изменении поведения кнопки на Enabled:=False, может кто то сталкивался с подобными вопросами — буду благодарен за совет.
сделай Glyph состоящий из 2 битмапов, первый будет использован для состояния Enabled, второй для Disabled. свойство NumGlyphs должно содержать количество битмапов в Glyph
Re: TSpeedButton - отображение Glyph'a в Disabled-режиме
Здравствуйте, delphinchik, Вы писали:
D>Если у кнопки TSpeedButton установить Enabled = False то Glyph автоматически скрывается. Меня такое поведение не устраивает, нужно чтобы кнопка просто становилась недоступной, текст кнопки ведь никуда не пропадает, почему тогда пропадает рисунок? Суть в том, что в пользовательских настройках программы можно сделать так, чтобы на кнопках отоюражались только иконки без надписей, в некоторых режимах кнопки могут быть недоступны, а их цвет по дизайну программы такой же как и фоновый, поэтому бывают ситуации когда некоторых кнопок на панели управления абсолютно не видно, и тогда программа приобретает страшный вид, получается как будто кнопки разбросаны по панели где попало, хотя на самом деле остальных кнопок просто не видно. Я вижу решение проблемы в изменении поведения кнопки на Enabled:=False, может кто то сталкивался с подобными вопросами — буду благодарен за совет.
Glyph скрывается потому что TSpeedButton не смог автоматически подготовить Disabled Glyph. Поэтому дорисуй в каком то графическом редакторе еще одну картинку (лучше просто перегнать ее в Gray Sacle) и доклей ее справа к основной.
Так если у тебя была картинка размером 16x16 то должен сделать новую 32x16. Смотри рисунок:
Если у кнопки TSpeedButton установить Enabled = False то Glyph автоматически скрывается. Меня такое поведение не устраивает, нужно чтобы кнопка просто становилась недоступной, текст кнопки ведь никуда не пропадает, почему тогда пропадает рисунок? Суть в том, что в пользовательских настройках программы можно сделать так, чтобы на кнопках отоюражались только иконки без надписей, в некоторых режимах кнопки могут быть недоступны, а их цвет по дизайну программы такой же как и фоновый, поэтому бывают ситуации когда некоторых кнопок на панели управления абсолютно не видно, и тогда программа приобретает страшный вид, получается как будто кнопки разбросаны по панели где попало, хотя на самом деле остальных кнопок просто не видно. Я вижу решение проблемы в изменении поведения кнопки на Enabled:=False, может кто то сталкивался с подобными вопросами — буду благодарен за совет.
Re[2]: TSpeedButton - отображение Glyph'a в Disabled-режиме