Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
ВнизКомпонента как параметр процедуры. Найти похожие ветки
← →
Talle (2004-04-20 11:28) [0]Подскажите пожалуйста, как передать в процедуру одну из компонент(label,button..), чтобы затем у переданной компоненты изменить свойство Font.
← →
Talle (2004-04-20 11:28) [0]Подскажите пожалуйста, как передать в процедуру одну из компонент(label,button..), чтобы затем у переданной компоненты изменить свойство Font.
← →
Тимохов © (2004-04-20 11:31) [1]procedure changelabelfont(const aLabel: TLabel);
begin
aLabel.Font....
end;
changelabelfont(lablel1);
← →
Тимохов © (2004-04-20 11:31) [1]procedure changelabelfont(const aLabel: TLabel);
begin
aLabel.Font....
end;
changelabelfont(lablel1);
← →
Smithson © (2004-04-20 11:31) [2]var Alabel: TLabel
Другое дело, что смена шрифта у стандартных компонент (прорисовкой которых занимается windows), дело не благодарное...
← →
Smithson © (2004-04-20 11:31) [2]var Alabel: TLabel
Другое дело, что смена шрифта у стандартных компонент (прорисовкой которых занимается windows), дело не благодарное...
← →
Тимохов © (2004-04-20 11:33) [3]
> Smithson © (20.04.04 11:31) [2]
А без var работать не будет? Ой-ли :)))))
← →
Тимохов © (2004-04-20 11:33) [3]
> Smithson © (20.04.04 11:31) [2]
А без var работать не будет? Ой-ли :)))))
← →
Smithson © (2004-04-20 11:35) [4]Будет, но так МНЕ понятнее, что в этой процедуре переданный компонент меняется. А const я пишу, когда он используется, но не меняется. Извини, привычка :)
← →
Smithson © (2004-04-20 11:35) [4]Будет, но так МНЕ понятнее, что в этой процедуре переданный компонент меняется. А const я пишу, когда он используется, но не меняется. Извини, привычка :)
← →
Ega23 © (2004-04-20 11:36) [5]procedure MyFunction(aButton:TButton);
begin
aButton.Font. ....
end;
← →
Ega23 © (2004-04-20 11:36) [5]procedure MyFunction(aButton:TButton);
begin
aButton.Font. ....
end;
← →
Тимохов © (2004-04-20 11:36) [6]
> Smithson © (20.04.04 11:35) [4]
по var не все можно передать - например результат другой функции не передашь.
имхо не очень удобно.
← →
Тимохов © (2004-04-20 11:36) [6]
> Smithson © (20.04.04 11:35) [4]
по var не все можно передать - например результат другой функции не передашь.
имхо не очень удобно.
← →
Ega23 © (2004-04-20 11:38) [7]Тимохов © (20.04.04 11:33) [3]
Я один раз столкнулся, что не работало без var :-((( По крайней мере, если var - то уж точно "по ссылке".
← →
Ega23 © (2004-04-20 11:38) [7]Тимохов © (20.04.04 11:33) [3]
Я один раз столкнулся, что не работало без var :-((( По крайней мере, если var - то уж точно "по ссылке".
← →
Smithson © (2004-04-20 11:39) [8]> Тимохов © (20.04.04 11:36) [6]
А смысл менять временную переменную? Которую тебе вернет функция... Ее как раз по const
:)) Флеймим.
← →
Smithson © (2004-04-20 11:39) [8]> Тимохов © (20.04.04 11:36) [6]
А смысл менять временную переменную? Которую тебе вернет функция... Ее как раз по const
:)) Флеймим.
← →
Тимохов © (2004-04-20 11:42) [9]
> Ega23 © (20.04.04 11:38) [7]
Быть не может...
Значит в другом ошибка.
> Smithson © (20.04.04 11:39) [8]
Не флеймим, а обмениваемя опытом и подходами.
Да пишите, как хотите - все равно откажетесь, т.к. поймете, что так делать не удобно и не соответствует семантике дельфи.
← →
Тимохов © (2004-04-20 11:42) [9]
> Ega23 © (20.04.04 11:38) [7]
Быть не может...
Значит в другом ошибка.
> Smithson © (20.04.04 11:39) [8]
Не флеймим, а обмениваемя опытом и подходами.
Да пишите, как хотите - все равно откажетесь, т.к. поймете, что так делать не удобно и не соответствует семантике дельфи.
← →
Silver Alex © (2004-04-20 11:42) [10]в данном случае будет работать и без const и без var, только ссылка увеличится.
← →
Silver Alex © (2004-04-20 11:42) [10]в данном случае будет работать и без const и без var, только ссылка увеличится.
← →
Тимохов © (2004-04-20 11:43) [11]
> только ссылка увеличится.
какая сслыка?
← →
Тимохов © (2004-04-20 11:43) [11]
> только ссылка увеличится.
какая сслыка?
← →
Ega23 © (2004-04-20 11:44) [12]Да пишите, как хотите - все равно откажетесь, т.к. поймете, что так делать не удобно и не соответствует семантике дельфи.
А я, между прочим, один раз всего var для объекта писал. В том самом случае.
После обеда поищу, может найду эту фишку.
← →
Ega23 © (2004-04-20 11:44) [12]Да пишите, как хотите - все равно откажетесь, т.к. поймете, что так делать не удобно и не соответствует семантике дельфи.
А я, между прочим, один раз всего var для объекта писал. В том самом случае.
После обеда поищу, может найду эту фишку.
← →
Тимохов © (2004-04-20 11:46) [13]
> Ega23 © (20.04.04 11:44) [12]
не ищи - не найдешь.
← →
Тимохов © (2004-04-20 11:46) [13]
> Ega23 © (20.04.04 11:44) [12]
не ищи - не найдешь.
← →
Silver Alex © (2004-04-20 11:47) [14]
> Тимохов © (20.04.04 11:43) [11]
на обьект, наверное, какая же еще :)
← →
Silver Alex © (2004-04-20 11:47) [14]
> Тимохов © (20.04.04 11:43) [11]
на обьект, наверное, какая же еще :)
← →
Тимохов © (2004-04-20 11:49) [15]
> Silver Alex © (20.04.04 11:47) [14]
т.е. ссылка увеличится (например на 1) и будет указывать уже не на объект, а фиг знает на что.
Про что речь то? Не поясните...
Я что-то не пойму о чем вы..
← →
Тимохов © (2004-04-20 11:49) [15]
> Silver Alex © (20.04.04 11:47) [14]
т.е. ссылка увеличится (например на 1) и будет указывать уже не на объект, а фиг знает на что.
Про что речь то? Не поясните...
Я что-то не пойму о чем вы..
← →
Григорьев Антон (2004-04-20 11:57) [16]
> Другое дело, что смена шрифта у стандартных компонент (прорисовкой
> которых занимается windows),
Это с каких это пор прорисовкой TLabel"а занимается Windows?!
← →
Григорьев Антон (2004-04-20 11:57) [16]
> Другое дело, что смена шрифта у стандартных компонент (прорисовкой
> которых занимается windows),
Это с каких это пор прорисовкой TLabel"а занимается Windows?!
← →
Reindeer Moss Eater © (2004-04-20 11:58) [17]procedure MyFunction(var aButton:TButton);
Одно неосторожное движение в такой процедуре - и утечка памяти обеспечена.
Если только процедура не предназначена создавать новую кнопку и возвращать её в параметре
← →
Reindeer Moss Eater © (2004-04-20 11:58) [17]procedure MyFunction(var aButton:TButton);
Одно неосторожное движение в такой процедуре - и утечка памяти обеспечена.
Если только процедура не предназначена создавать новую кнопку и возвращать её в параметре
← →
Talle (2004-04-20 12:09) [18]А можно ли как-либо определить тип параметра-компоненты процедуры, чтобы предавать в одну процедуру и метку,и кнопку?
← →
Talle (2004-04-20 12:09) [18]А можно ли как-либо определить тип параметра-компоненты процедуры, чтобы предавать в одну процедуру и метку,и кнопку?
← →
Reindeer Moss Eater © (2004-04-20 12:10) [19]передавай их общего предка, уже имеющего нужное тебе свойство
← →
Reindeer Moss Eater © (2004-04-20 12:10) [19]передавай их общего предка, уже имеющего нужное тебе свойство
← →
Тимохов © (2004-04-20 12:11) [20]
> Talle (20.04.04 12:09) [18]
procedure Do(const aControl: TControl);
begin
if aControl is TEdit then
begin
TEdit(aControl).Font....
end else
if aControl is TLabel then
begin
TLabel(aControl).Font....
end else
end;
← →
Тимохов © (2004-04-20 12:11) [20]
> Talle (20.04.04 12:09) [18]
procedure Do(const aControl: TControl);
begin
if aControl is TEdit then
begin
TEdit(aControl).Font....
end else
if aControl is TLabel then
begin
TLabel(aControl).Font....
end else
end;
← →
Talle (2004-04-20 12:18) [21]Всем большое спасибо
← →
Talle (2004-04-20 12:18) [21]Всем большое спасибо
← →
Jack128 © (2004-04-20 12:42) [22]
> Talle (20.04.04 12:09) [18]
> А можно ли как-либо определить тип параметра-компоненты
> процедуры, чтобы предавать в одну процедуру и метку,и кнопку
Конкретно, для примера Тимохов © "a проще сделать так:
type
TControlCrack = class(TControl)
public
property Font;
end;
procedure Do(const aControl: TControl);
begin
with TControlCrack(aControl) do
begin
Font...
end
end;
← →
Jack128 © (2004-04-20 12:42) [22]
> Talle (20.04.04 12:09) [18]
> А можно ли как-либо определить тип параметра-компоненты
> процедуры, чтобы предавать в одну процедуру и метку,и кнопку
Конкретно, для примера Тимохов © "a проще сделать так:
type
TControlCrack = class(TControl)
public
property Font;
end;
procedure Do(const aControl: TControl);
begin
with TControlCrack(aControl) do
begin
Font...
end
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];
Память: 0.55 MB
Время: 0.036 c