Форум: "Основная";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];
ВнизКак установить свой фонт для контролов при Enabled=false Найти похожие ветки
← →
bss (2007-04-16 09:20) [0]Как установить произвольный шрифт для контрола, когда состояние контрола Enabled=false?
← →
Novice (2007-04-16 09:53) [1]procedure TForm1.Button1Click(Sender : TObject);
begin
if Button2.Enabled = false then Button2.Font.Name := "Arial";
end;
← →
Kolan © (2007-04-16 09:57) [2]> Novice
Еще же назад надо вернуть :)
← →
Novice (2007-04-16 10:22) [3]procedure TForm1.Button1Click(Sender : TObject);
begin
if Button2.Enabled = false then Button2.Font.Name := "Arial" else
Button2.Font.Name := "MS Sans Serif";
end;
:)
← →
Yanis © (2007-04-16 10:39) [4]
> Как установить произвольный шрифт для контрола, когда состояние
> контрола Enabled=false?
Так же как и у компонента у которого состояние Enabled = True.
Не совсем ясно, в чём конкретно загвоздка.
← →
bss (2007-04-16 10:51) [5]У нескольких контролов сразу
← →
Yanis © (2007-04-16 11:21) [6]Примерно так:
var
i: Integer;
begin
for i := 0 to ComponentCount - 1 do
if (Components[i] is TButton) then
if not (Components[i] as TButton).Enabled then
(Components[i] as TButton).Font.Name := имя_шрифта;
end;
← →
homm © (2007-04-16 12:06) [7]> [6] Yanis © (16.04.07 11:21)
> Примерно так:
И когда это вызывать? И как потом назад возвращать?
← →
{RASkov} (2007-04-16 12:52) [8]> И когда это вызывать?
после смены состояния Enable Controla.
Сделать процедуру, например:
procedure SetFontEn;
var
i: Integer;
begin
for i := 0 to ComponentCount - 1 do
if (Components[i] is TButton) then
if (Components[i] as TButton).Enabled then
(Components[i] as TButton).Font.Name := имя_шрифта else
(Components[i] as TButton).Font.Name := имя_шрифта;
end;
> И как потом назад возвращать?
Так-же.
← →
homm © (2007-04-16 13:12) [9]> после смены состояния Enable Controla.
Это был наводящий вопрос, ответ на который я догадывался. Дак вот 3 раза обратится к RTTI для каждого контролла при каждой смене состояния любого из них — не позволительная роскошь.
← →
{RASkov} (2007-04-16 13:13) [10]> [9] homm © (16.04.07 13:12)
With
← →
Yanis © (2007-04-16 13:17) [11]
> Дак вот 3 раза обратится к RTTI для каждого контролла при
> каждой смене состояния любого из них — не позволительная
> роскошь.
Да работа с VCL вообще штука страшная.
← →
bss (2007-04-16 13:41) [12]А если контролы разных типов (TEdit, TButton и т.п.)?
← →
{RASkov} (2007-04-16 13:49) [13]> [12] bss (16.04.07 13:41)
Приводи к общему родителю.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2007.06.10;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.044 c