TToolButton, TImageList: некоторые проблемы

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

TToolButton, TImageList: некоторые проблемы

Сообщение Browny » 31.08.2007 11:24:34

Заметил, что:
TToolButton не получают от TToolbar изменения шрифта, в частности ParentFont. ToolBar раccылает ParentFontChanged только по списку FControls, не заглядывая в FWinControls.

Далее: не меняется цвет шрифта при переходе TToolButton в состояние Enabled:= False.

Ещё: лично не оценил, что TToolButton при свойствах Flat:=True и Enabled:=False всё же отжимается при наведении мыши.

И: TImageList не умеет рисовать серые иконки. Т.е. метод
TCustomImageList.Draw(ACanvas,AX,AY AIndex, AEnabled), несмотря на выставленный параметр AEnabled = False, не рисует (в частности) на
TToolButton серый образ иконки.

Пока не оформил всё в удобном виде, разумеется, все исправления с моей стороны в компонентах - спорны и не очень аккуратны. Тем не менее - предлагаю решение, возможно, кому-то это будет интересно.
Все изменения в модулях можно найти поиском по ключевому слову "Browny" - я комментарием указал начало изменения оригинального кода.

Забрать архив измененных модулей отсюда: http://brokenplate.mpt.ru/filestorage/lcl-snapshot08082007-v01.rar

Архив изменённых модулей + diff файлы:
http://brokenplate.mpt.ru/filestorage/lcl-diff-08082007-v01.rar

Буду рад откликам, исправлениям и рекомендациям - уверен, у кого-то есть лучший вариант того ,что я сделал.

P.S. С diff-файлами осторожнее, делал нестандартной утилитой.
Последний раз редактировалось Browny 31.08.2007 17:33:39, всего редактировалось 1 раз.
Аватара пользователя
Browny
новенький
 
Сообщения: 37
Зарегистрирован: 31.08.2007 10:42:55

Сообщение alexs » 31.08.2007 15:34:59

TToolButton вобще по жизни ещё не доделанный - я им вобще не пользуюсь
посмотри мой из rxFpc (а если присоеденишся к доработкам - то вобще хорошо)
если можеш - офрми в виде патчей и предложи в разработчикам
Аватара пользователя
alexs
долгожитель
 
Сообщения: 4064
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь

Re: TToolButton, TImageList: некоторые проблемы

Сообщение Лекс Айрин » 08.03.2013 13:47:25

Извините, если не по теме, Хочу программно нажать кнопку на панели TToolButton, но не получается.

Код: Выделить всё
procedure TForm1.ToolButton7Click(Sender: TObject);
begin
  if Form1.ToolButton7.Down=True then Form3.Show

  else Form3.Hide;
end;
     

procedure TForm1.MenuItem5Click(Sender: TObject);
begin
     Form1.ToolButton7.Click;
end;
 


При этом, Form3, при нажатии на пункт меню, форма не показывается/не скрывается, но спокойно поднимается. При нажатии на саму кнопку проблем нет. Стиль кнопки -- tbsCheck. Это нормальное поведение или мой косяк?
Аватара пользователя
Лекс Айрин
долгожитель
 
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 252

Рейтинг@Mail.ru