Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите решить такой вапрос

2.6K
24 августа 2004 года
php_error
40 / / 22.08.2004
Вот что имено мне надо. Например у меня есть на форме 1 Edit и 10 QLeb. Я хочу чтобы все что я введу в Edit показывал сразу в QLeb. Есть конечно один вариант QLeb->caption = Edit->text; но он сильно большой как мне нимного его уменшыть.
294
24 августа 2004 года
Plisteron
982 / / 29.08.2003
Цитата:
Originally posted by php_error
Вот что имено мне надо. Например у меня есть на форме 1 Edit и 10 QLeb. Я хочу чтобы все что я введу в Edit показывал сразу в QLeb. Есть конечно один вариант QLeb->caption = Edit->text; но он сильно большой как мне нимного его уменшыть.


Сделай массов контролов и меняй в цикле, больше тут посоветовать нечего. Хотя, можно ещё сделать массив хэндлов и в цикле делать SetWindowText. Но это те же яйца, только в профиль.

2.6K
24 августа 2004 года
php_error
40 / / 22.08.2004
Цитата:
Originally posted by Plisteron

Сделай массов контролов и меняй в цикле, больше тут посоветовать нечего. Хотя, можно ещё сделать массив хэндлов и в цикле делать SetWindowText. Но это те же яйца, только в профиль.


А если точнее для тех кто в танке.

294
24 августа 2004 года
Plisteron
982 / / 29.08.2003
Цитата:
Originally posted by php_error

А если точнее для тех кто в танке.


В объявлении класса окна:

 
Код:
TQLeb /* ну или что там у тебя*/ *e[10];

В OnCreate пишешь:
 
Код:
for(int i = 0; i < 10; i++)
{
    e = new TEdit(this);
    e->Parent = this;
// ещё координаты нужные задаём
    e->Visible = true;
}

В Edit1OnChange:
 
Код:
for(int i = 0; i < 10; i++)
    e->Caption = Edit1->Text;


Или так.

В OnCreate пишешь:
 
Код:
e[0] = QLeb1;
    e[1] = QLeb2;
//   ...
    e[9] = QLeb10;
}

В объявлении класса окна и в Edit1OnChange то же, что и в предыдущем случае.

Или так.
В объявлении класса окна:
 
Код:
HANDLE h[10];

В OnCreate:
 
Код:
h[0] = QLeb1->Handle;
    h[1] = QLeb2->Handle;
//   ...
    h[9] = QLeb10->Handle;
}

В Edit1OnChange:
 
Код:
char *t=Edit1->Text.c_str();
for(int i = 0; i < 10; i++)
    SetWindowText(h, t);


Правда, на мой вкус, все варианты какие-то некузявые. Я бы просто 10 присваиваний сделал. Хотя, с точки зрения быстродействия, возможно, последний вариант (с хэндлами) даст некоторый выигрыш.
621
24 августа 2004 года
Бешеный кролик
151 / / 23.03.2004
А если, например, создать собственный класс TMyQLeb, унаследовав его от QLeb (не знаю что такое). В MyQLeb прописать обработку некоего своего собщения. Посадить 10 MyqLeb'ов на форму. А затем в Edit1OnСhange написать Form1->Broadcast(Сообщение). Так кузяво? Или ерунда?
294
24 августа 2004 года
Plisteron
982 / / 29.08.2003
Цитата:
Originally posted by Бешеный кролик
А если, например, создать собственный класс TMyQLeb, унаследовав его от QLeb (не знаю что такое). В MyQLeb прописать обработку некоего своего собщения. Посадить 10 MyqLeb'ов на форму. А затем в Edit1OnСhange написать Form1->Broadcast(Сообщение). Так кузяво? Или ерунда?


Имхо, кузяво.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог