Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / массивы кнопок / 17 сообщений из 17, страница 1 из 1
16.11.2017, 15:17:07
    #39554403
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
нужно чтобы при создании формы имена кнопок менялись на цвета радуги (непонятное это цвета радуги)

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
var
  Form1: TForm1;
   raduga:array[1..7] of string=('...');
  Button : Array[1..7] of TButton;

implementation

{$R *.dfm}



procedure TForm1.FormCreate(Sender: TObject);

 var i:integer;
begin
for i:=1 to 7 do begin
Button[i].Caption:=raduga[i];
end;
end;
...
Рейтинг: 0 / 0
16.11.2017, 15:18:00
    #39554404
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
прога запускается но свою функцию не выполняет
...
Рейтинг: 0 / 0
16.11.2017, 15:32:08
    #39554415
Квейд
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
А объект кнопки кто будет создавать? Пушкин?
...
Рейтинг: 0 / 0
16.11.2017, 15:36:52
    #39554422
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
я создал 7 кнопок. Или ты о чем ?
...
Рейтинг: 0 / 0
16.11.2017, 15:37:21
    #39554426
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
temir123прога запускается но свою функцию не выполняет

Не мудрено, что не работает. Кнопки нужно создать (уже сказали) и поместить их на форму. Т.е. твой цикл немного усложнится...
...
Рейтинг: 0 / 0
16.11.2017, 15:37:53
    #39554427
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
temir123я создал 7 кнопок. Или ты о чем ?

Покажи, где ты их создал.
...
Рейтинг: 0 / 0
16.11.2017, 15:41:22
    #39554433
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Button6: TButton;
    Button7: TButton;
    Shape1: TShape;
    Shape2: TShape;
    Shape3: TShape;
    Shape4: TShape;
    Shape5: TShape;
    Shape6: TShape;
    Shape7: TShape;
    procedure FormCreate(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
   raduga:array[1..7] of string=('красный ','оранжевый','желтый',
                              'зеленый','голубой','синий','фиолетовый');
  Button : Array[1..7] of TButton;

implementation

{$R *.dfm}



procedure TForm1.FormCreate(Sender: TObject);
 var
 i:integer;
begin
for i:=1 to 7 do begin
Button[i].Caption:=raduga[i];
end;
end;




end.
...
Рейтинг: 0 / 0
16.11.2017, 15:42:06
    #39554435
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
shape там дальше понадобится
...
Рейтинг: 0 / 0
16.11.2017, 15:45:02
    #39554438
DimaBr
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
Код: pascal
1.
2.
3.
4.
5.
var B: TComponent;
for i:=1 to 7 do begin
  B := FindComponent('Button'+IntToStr(i));
  if B is TButton then TComponent(B).Caption:=raduga[i];
end;
...
Рейтинг: 0 / 0
16.11.2017, 15:45:07
    #39554439
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
...
Рейтинг: 0 / 0
16.11.2017, 15:48:26
    #39554447
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
я возможно где-то дико туплю но он пишет [Error] Unit1.pas(51): Undeclared identifier: 'Caption'

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
procedure TForm1.FormCreate(Sender: TObject);
var B: TComponent;
 i:integer;
 begin
for i:=1 to 7 do begin
  B := FindComponent('Button'+IntToStr(i));
  if B is TButton then TComponent(B).Caption:=raduga[i];
end;
end;


end.
...
Рейтинг: 0 / 0
16.11.2017, 16:00:09
    #39554461
DarkMaster
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
temir123я возможно где-то дико туплю но он пишет [Error] Unit1.pas(51): Undeclared identifier: 'Caption'

procedure TForm1.FormCreate(Sender: TObject);
var B: TComponent;
i:integer;
begin
for i:=1 to 7 do begin
B := FindComponent('Button'+IntToStr(i));
if B is TButton then TComponent(B).Caption:=raduga[i];
end;
end;


end.

1) Выбрось свой массив (array of TButton) - он тебе не нужен.
2)
if (B is TButton) then TButton(B).Caption:=raduga[i];
...
Рейтинг: 0 / 0
16.11.2017, 17:32:58
    #39554554
temir123
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
спасибо, но у меня вопрос, это реально сделать с помощью массива кнопок, просто у меня спец.задание
...
Рейтинг: 0 / 0
16.11.2017, 17:41:28
    #39554563
JayDi
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
button1.color := clRed;
button2.color := clBlue;
и т.д.
...
Рейтинг: 0 / 0
16.11.2017, 17:49:33
    #39554568
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
temir123спасибо, но у меня вопрос, это реально сделать с помощью массива кнопок, просто у меня спец.задание
Buttons[1]:=Button1;
Buttons[2]:=Button2;
Buttons[3]:=Button3;
...
...
Рейтинг: 0 / 0
16.11.2017, 17:58:42
    #39554578
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
temir123спасибо, но у меня вопрос, это реально сделать с помощью массива кнопок, просто у меня спец.задание
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
PosLeft:=100;//например
for i:=1 to Length(Button)
 do begin
   Button[i]:=TButton.Create(Form1);
   Button[i].Parent:=Form1;
   Button[i].Left:=PosLeft;
   Button[i].Top:=5+(Button[i].Height+5)*(i-1);
   Button[i].Caption:=raduga[i];
     end;


Что-то подобное...
...
Рейтинг: 0 / 0
16.11.2017, 18:00:45
    #39554584
Gerasimenko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
массивы кнопок
temir123,

20960479
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / массивы кнопок / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]