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

Вниз

Просмотреть все компоненты   Найти похожие ветки 

 
БезИмени   (2006-10-06 04:06) [0]

Нужно "пробежаться" по всем компонентам всех форм приложения, имеющие свойства Text или Caption и вывести результат в memo в виде

[TForm1]
button1.text = sampletext
button2.text = sampletext2
menu1.caption = captionfgff

[TForm2]
n1.caption = eeeeesdgbvsd

...

и так со всеми формами.


 
Ketmar ©   (2006-10-06 05:05) [1]

разрешаю.


 
MBo ©   (2006-10-06 07:55) [2]

Controls[] используй


 
Loginov Dmitry ©   (2006-10-06 07:56) [3]

используй
- for ... to ... do
- Screen
- ComponentCount
- Components
- is , as
- ClassName
- TMemo
- RTTI
- Head


 
SerJaNT ©   (2006-10-08 01:50) [4]

Я делал вот так:


procedure TForm1.Button1Click(Sender: TObject);
var i,forms,cd:integer;
mt:string;
begin

for forms:=0 to screen.FormCount-1 do begin

form1.memo1.Lines.add("[T"+screen.Forms[forms].Name+"]");
for i:=0 to screen.Forms[forms].componentcount-1 do begin
 if  screen.Forms[forms].components[i] is TMenuItem then begin
   mt:=TMenuItem(screen.Forms[forms].FindComponent(screen.Forms[forms].components[i ].GetNamePath)).Caption;
   form1.memo1.Lines.add(screen.Forms[forms].components[i].GetNamePath+".caption="+mt);
 end;
 if  screen.Forms[forms].components[i] is TEdit then begin
   mt:=TEdit(screen.Forms[forms].FindComponent(screen.Forms[forms].components[i].Ge tNamePath)).text;
   form1.memo1.Lines.add(screen.Forms[forms].components[i].GetNamePath+".text="+mt);
 end;
if  screen.Forms[forms].components[i] is TToolButton then begin
   mt:=TToolButton(screen.Forms[forms].FindComponent(screen.Forms[forms].components [i].GetNamePath)).Hint;
   form1.memo1.Lines.add(screen.Forms[forms].components[i].GetNamePath+".hint="+mt);
end;
if  screen.Forms[forms].components[i] is TLabel then begin
   mt:=TLabel(screen.Forms[forms].FindComponent(screen.Forms[forms].components[i].G etNamePath)).Caption;
   form1.memo1.Lines.add(screen.Forms[forms].components[i].GetNamePath+".caption="+mt);
end;
end;

form1.memo1.Lines.add("");
end;    
end;


 
Германн ©   (2006-10-08 01:59) [5]

2 Loginov Dmitry ©   (06.10.06 07:56) [3]
2 SerJaNT ©   (08.10.06 01:50) [4]
См. [2]
У TComponent нет ни Text, ни Caption.


 
SerJaNT ©   (2006-10-08 03:31) [6]

Но ведь работает :-)


 
Percent   (2006-10-08 03:35) [7]

SerJaNT ©   (08.10.06 03:31) [6]
Но ведь работает :-)


Про TPanel поговорим?
А про MyCaptionedComponent?


 
Германн ©   (2006-10-08 04:27) [8]


> SerJaNT ©   (08.10.06 03:31) [6]
>
> Но ведь работает :-)
>

Работает. Но зачем столько лишнего перебора?


 
Loginov Dmitry ©   (2006-10-08 13:50) [9]

Германн ©   (08.10.06 1:59) [5]
У TComponent нет ни Text, ни Caption.


Зато поддерживается RTTI


 
Anatoly Podgoretsky ©   (2006-10-08 13:55) [10]

Всех? И тех что не созданы, в том числе и динамически.
Components не подходит, тебе надо искать не компоненты, а контролы, а это Controls, но найдет только те, которые подключены, а те которые еще не найдет, но это опять тот же вопрос - Всех.
Вопрос в постановке Всех решения не имеет.



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

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

Наверх




Память: 0.49 MB
Время: 0.047 c
15-1159459716
Stexen
2006-09-28 20:08
2006.10.22
JPEG


6-1148593979
Тфьу
2006-05-26 01:52
2006.10.22
Не могу передать массив в PHP


1-1157899111
Kolan
2006-09-10 18:38
2006.10.22
Управление свойством Point TChart.


15-1159200709
Ломброзо
2006-09-25 20:11
2006.10.22
Проверьте себя на русскость


2-1159865243
zaqqaz
2006-10-03 12:47
2006.10.22
как зделать так чтоб комп не выключался/ребутился ?