Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Подгрузка DFM


Ш-К ©   (2005-09-06 15:09:00) 

У меня есть созданная форма. К этой форме я храню отдельно какой-то новый DFM. Разумеется, объекты "родного" DFM и DFM нового совпадают. Разница только в установленных свойствах.
Как проинициировать в рантайм новый DFM для созданной формы.


GLFox   (2005-09-06 15:35:00) [1]

Можно поробовать воспользоваться методом TObject.FieldAddress:
function FieldAddress(const Name: ShortString): Pointer;

Который позволяет access a specified published field of an object. FieldAddress returns a pointer to the field if it exists. If the object has no published field by that name, FieldAddress returns nil (Delphi) or NULL (C++).


Ш-К   (2005-09-06 15:29:00) [2]

Если короче.
Есть форма:

object Form1: TForm1
 Left = 351
 Top = 109
 Width = 696
 Height = 800
 Caption = 'Form1'
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = 'MS Sans Serif'
 Font.Style = []
 OldCreateOrder = False
 PixelsPerInch = 96
 TextHeight = 13
end

Надо в рантайм установить св-ва из DFM:

object Form1: TForm1
 Left = 264
 Top = 147
 Width = 381
 Height = 244
 Caption = 'OtherCaption'
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = 'MS Sans Serif'
 Font.Style = []
 OldCreateOrder = False
 PixelsPerInch = 96
 TextHeight = 13
end


Наверх

Титульная страница Поиск, карта сайта Написать письмо