|
можно ли обращаться к компонентам в среде BorlandC в цикле? |
|
|
|
Apr 18 2008, 18:54
|

Частый гость
 
Группа: Свой
Сообщений: 154
Регистрация: 16-08-07
Из: Москва
Пользователь №: 29 829

|
суть проблемы. есть 4ре компонента размещённые на форме, к примеру Panel1, Panel2, Panel3, Panel4. и есть массив который выводится на эти панели к примеру int temp[4]; можно ли написать следующий код в цикле Код Panel1->Caption = IntToStr(temp[0]); Panel2->Caption = IntToStr(temp[1]); Panel3->Caption = IntToStr(temp[2]); Panel4->Caption = IntToStr(temp[3]); среда разработки BorlandC++ 6.0 в WinXp
--------------------
все косяки, даже о которых не знает сам разработчик, - мои
|
|
|
|
|
 |
Ответов
|
Apr 18 2008, 21:18
|

Частый гость
 
Группа: Свой
Сообщений: 154
Регистрация: 16-08-07
Из: Москва
Пользователь №: 29 829

|
Цитата(zltigo @ Apr 19 2008, 00:25)  Moderator Вы хоть чуть-чуть дайте себе труд узнать где находится BCC и где программирование DSP, прежде, чем писать. Тему перенес. простите не заметил  ... сделаю всё возможное чтобы это не повторилось... Цитата Но лично я, для успокоения души создавал еще один массив, в который копировал нужные элементы, и работал уже с этим массивом. у меня тоже потом появилась такая мысль... а другой способ есть?? может быть это как-то можно сделать стандратами языка??
--------------------
все косяки, даже о которых не знает сам разработчик, - мои
|
|
|
|
|
Apr 18 2008, 21:46
|

Местный
  
Группа: Свой
Сообщений: 222
Регистрация: 9-06-07
Пользователь №: 28 317

|
Цитата(Mozart @ Apr 19 2008, 01:18)  у меня тоже потом появилась такая мысль... а другой способ есть?? может быть это как-то можно сделать стандратами языка?? Ну я же и говорю... Допустим, у нас форма описана как: Код class TForm1 : public TForm { __published: // IDE-managed Components TPanel *Panel1; TPanel *Panel2; TPanel *Panel3; TPanel *Panel4; private: // User declarations public: // User declarations __fastcall TForm1(TComponent* Owner); }; Тогда (в методе класса TForm1) (&this->Panel1)[0] это this->Panel1, (&this->Panel1)[1] это this->Panel2, и т.д. Повторюсь, это все верно только если Panel1..Panel4 описаны в классе последовательно. Если нет, то помочь может пожалуй только создание дополнительно массива. Описать это все массивом как поле класса мне не представляется возможным, там не случайно вставлена строчка "IDE-managed Components"
|
|
|
|
|
Apr 18 2008, 22:29
|

Частый гость
 
Группа: Свой
Сообщений: 154
Регистрация: 16-08-07
Из: Москва
Пользователь №: 29 829

|
Цитата(Aesthete Animus @ Apr 19 2008, 01:46)  Ну я же и говорю... Допустим, у нас форма описана как: Код class TForm1 : public TForm { __published: // IDE-managed Components TPanel *Panel1; TPanel *Panel2; TPanel *Panel3; TPanel *Panel4; private: // User declarations public: // User declarations __fastcall TForm1(TComponent* Owner); }; Тогда (в методе класса TForm1) (&this->Panel1)[0] это this->Panel1, (&this->Panel1)[1] это this->Panel2, и т.д. Повторюсь, это все верно только если Panel1..Panel4 описаны в классе последовательно. Если нет, то помочь может пожалуй только создание дополнительно массива. Описать это все массивом как поле класса мне не представляется возможным, там не случайно вставлена строчка "IDE-managed Components" всё допёрло... если в классе панели описаны не последовательно, то что собственно мешает нам собственными руками их переставить местами и пересобрать проект? вот такой получился проект, при чём местами переставил, и всё ок... Код TPanel **ptrPanel; ptrPanel = &Panel1; for (int i =0; i < 4; i++) { ptrPanel[i]->Caption = IntToStr(i); } спасибо!!!
Сообщение отредактировал Mozart - Apr 18 2008, 22:43
--------------------
все косяки, даже о которых не знает сам разработчик, - мои
|
|
|
|
Сообщений в этой теме
Mozart можно ли обращаться к компонентам в среде BorlandC в цикле? Apr 18 2008, 18:54 Aesthete Animus Цитата(Mozart @ Apr 18 2008, 22:54) суть ... Apr 18 2008, 21:01 Aesthete Animus 2Mozart
Всегда пожалуйста Apr 18 2008, 23:27 sigmaN Цитата(Mozart @ Apr 18 2008, 21:54) суть ... Apr 20 2008, 22:25 AHTOXA Цитата(Mozart @ Apr 19 2008, 00:54) можно... Apr 21 2008, 04:58 sigmaN Цитата(AHTOXA @ Apr 21 2008, 07:58) Вот д... Apr 21 2008, 08:00
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|