Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.07.26;
Скачать: CL | DM;

Вниз

Как перебрать на форме все контролы?   Найти похожие ветки 

 
andreil ©   (2008-02-26 21:52) [0]

Собственно надо это мне для того, чтобы программа сама читала Caption"ы и Text"ы контролов из ИНИ-файла для облегчения перевода на другие языки. Те я ищу код следующего содержания:

For i:=0 to КоличесвоКонтроловНаФорме do
begin
 If (Control[i] is TKOLEditBox) then
   (Control[i] as TKOLEditBox).Text:=LanguageIni.ValueInteger((Control[i] as TKOLEditBox).Text, (Control[i] as TKOLEditBox).Text);
end;


Те если, например контрол содержит строку "#Label", то ему в Caption надо будет считать из ИНИфайла параметр #Label.

ЗЫ: работе с ИНИфайлами можете не учить - и сам умею, мне надо просто узнать:
1)как перебрать все контролы на форме;
2)каким методом можно определить принадлежность контрола к даннгому типу (тотже TKOLEditBox).


 
Jon ©   (2008-02-27 00:46) [1]

Conditional defines: USE_NAMES

// Add USE_NAMES to conditional defines!
procedure TForm1.Button1Click(Sender: PObj);
var
 INIfile: PIniFile;
 I: Integer;
 NewCaption: String;
begin
 INIfile := OpenIniFile(ChangeFileExt(ExePath,".ini"));
 INIfile.Section := "caption";
 for I := 0 to Form.ChildCount -2 do
 begin
   NewCaption := INIfile.ValueString(Form.Children[I].Name,"");
   if NewCaption <> "" then Form.Children[I].Caption := NewCaption;
 end;
 INIfile.Free;
end;


Project1.ini

[caption]
label1=Label One
button1=My Button
editbox1=This is a test


 
andreil ©   (2008-02-27 09:53) [2]

Спасибо ;) Но я обошолся без USE_NAMES, просто читал из ИНИшника по Caption"ам каждого контрола :)



Страницы: 1 вся ветка

Текущий архив: 2009.07.26;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.022 c
15-1242766394
Германн
2009-05-20 00:53
2009.07.26
А что нынче происходит с Яндексом? Кто шалит?


15-1243091123
NailMan
2009-05-23 19:05
2009.07.26
кто какие нетбуки пользует? Какие впечатления?


15-1242860892
Иксик
2009-05-21 03:08
2009.07.26
Как зарегистрировать торговую марку в России?


2-1244032588
Pavlov
2009-06-03 16:36
2009.07.26
try except


2-1243356130
rect
2009-05-26 20:42
2009.07.26
Проблемы с transparent