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

Ваш аккаунт

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

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

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

НУЖНА ПОМОЩЬ!!!!

7.8K
21 октября 2004 года
DeadRhino
8 / / 21.10.2004
Люди добрые помогите пожалуйста:
1. У меня на форме несколько компонентов Image. Как изменить порядок их расположения??? Один должен находится за другим!!!

2. Как использовать переменные в именах компонентов???

3. Как открыть *.gif файл в компоненте Image???

Заранее благодарю!
247
21 октября 2004 года
wanja
1.2K / / 03.02.2003
Цитата:
Originally posted by DeadRhino
Люди добрые помогите пожалуйста:
1. У меня на форме несколько компонентов Image. Как изменить порядок их расположения??? Один должен находится за другим!!!


А что конкретно ты имеешь в виду? позицию на экране? Тогда передвинь руками.

Цитата:

2. Как использовать переменные в именах компонентов???


получить компонент по имени, что ли? Допустим "MyButton1"-"MyButton200"?
Попробуй эту функцию.
function FindChildControl(const ControlName: string): TControl;

368
21 октября 2004 года
rostyslav
629 / / 13.07.2004
Цитата:
1. У меня на форме несколько компонентов Image. Как изменить порядок их расположения??? Один должен находится за другим!!!

Если имеешь в виду Z-ордер, то сперва нужно щелкнуть правой кнопкой мыши на TImage, которая должна быть на самом верху и из popup-меню выбрать "Send to Back", потом на том, который должен быть вторым...итд.

Цитата:
2. Как использовать переменные в именах компонентов???

Типа, одна и та же перменная в одно время указывала на один TImage, в другое время на другой? Если да
TImage *img;
img = Image1;
...
img = Image4;

Цитата:
3. Как открыть *.gif файл в компоненте Image???

Скорей всего никак. TImage не поддерживает этот формат

10
21 октября 2004 года
Freeman
3.2K / / 06.03.2004
Цитата:
Originally posted by DeadRhino
3. Как открыть *.gif файл в компоненте Image???


Найти ту или иную реализацию GIF для VCL. Например, RxGIF в составе RXLib.

7.8K
22 октября 2004 года
DeadRhino
8 / / 21.10.2004
Большое спасибо за ответы!!! С двумя разобрался.
В первом вопросе действительно имелся ввиду Z-ордер спасибо rostyslav. С gif файлами тоже все ОК библиотека RXLib как и предложил smartsoft, спасибо!
А вот со вторым вопросом проблема:
Как использовать переменные в именах компонентов???
Может быть вапрос и ламерский! Но все же попытаюсь объяснить: допустим переменная A принимает значения 1, 2, 3. И в зависимости от этого выводится сообщение в Label1, Label2 или в Label3 соответственно! Так как мне использовать переменную А в имени компонента??? Например LABEL + A ????
1
22 октября 2004 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by DeadRhino
Большое спасибо за ответы!!! С двумя разобрался.
В первом вопросе действительно имелся ввиду Z-ордер спасибо rostyslav. С gif файлами тоже все ОК библиотека RXLib как и предложил smartsoft, спасибо!
А вот со вторым вопросом проблема:
Как использовать переменные в именах компонентов???
Может быть вапрос и ламерский! Но все же попытаюсь объяснить: допустим переменная A принимает значения 1, 2, 3. И в зависимости от этого выводится сообщение в Label1, Label2 или в Label3 соответственно! Так как мне использовать переменную А в имени компонента??? Например LABEL + A ????


 
Код:
TLabel *label = new TLabel(this);
label->Name = "label"+IntToStr(A);
label->Left = Label1->Left;
label->Top = Label3->Top+(Label3->Height*2);
label->Caption = "Vav";
label->Parent = Form1;
label->Visible = true;

 
Код:
#define LABEL(a,b)a##b
....
TLabel* LABEL(NW,1)=new TLabel(this);
...

 
Код:
switch(A){
 case 1:
 Label1->Caption = "";
 break;
...
}

 
Код:
int Count = Form1->ComponentCount;
for(int i=0;i<Count;i++){
if(Form1->Components->ClassNameIs("TLabel"))
{
 if(Form1->Components->Name=="Label1")
....
}
}
368
22 октября 2004 года
rostyslav
629 / / 13.07.2004
Цитата:
Originally posted by DeadRhino
Как использовать переменные в именах компонентов???
Может быть вапрос и ламерский! Но все же попытаюсь объяснить: допустим переменная A принимает значения 1, 2, 3. И в зависимости от этого выводится сообщение в Label1, Label2 или в Label3 соответственно! Так как мне использовать переменную А в имени компонента??? Например LABEL + A ????

Можно определить массив меток на уровне формы

TLabel *labels[3];

в событии OnCreate:

labels[0] = Label1;
labels[1] = Label2;
labels[2] = Label3;

и тогда, напр.

labels[A]->Caption = "Hi!";

7.8K
22 октября 2004 года
DeadRhino
8 / / 21.10.2004
Rostyslav огромное спасибо!!! Способ действительно очень интересный!!! А можно это сделать как-нибудь по другому??? Кто знает ответте!!!
Да и еще подскажите плиз существует ли RxLib для Borland C++ Builder 6 ??? Или может быть для этого можно переделать предыдущие версии этой библиотеки???
10
22 октября 2004 года
Freeman
3.2K / / 06.03.2004
Цитата:
Originally posted by DeadRhino
Да и еще подскажите плиз существует ли RxLib для Borland C++ Builder 6 ??? Или может быть для этого можно переделать предыдущие версии этой библиотеки???


Авторы RxLib разбежались, поддержки библиотеки давно прекращена. Но по Сети бродят различные адаптации. Например, у меня есть версии для Дельфи 6 и 7. Наверное, можно найти и для Билдера.

7.8K
22 октября 2004 года
DeadRhino
8 / / 21.10.2004
Если не секрет, где можно взять хотя бы для Delphi 6 или 7 ???
1
22 октября 2004 года
kot_
7.3K / / 20.01.2000
Цитата:
Originally posted by DeadRhino
Rostyslav огромное спасибо!!! Способ действительно очень интересный!!! А можно это сделать как-нибудь по другому??? Кто знает ответте!!!
Да и еще подскажите плиз существует ли RxLib для Borland C++ Builder 6 ??? Или может быть для этого можно переделать предыдущие версии этой библиотеки???


Есть и под 6 версию борланда. 5 мег

10
22 октября 2004 года
Freeman
3.2K / / 06.03.2004
Цитата:
Originally posted by DeadRhino
Если не секрет, где можно взять хотя бы для Delphi 6 или 7 ???


А хер его знает. Только разве сюда выложить?

323
27 октября 2004 года
Sergun
228 / / 20.09.2000
Цитата:
Originally posted by DeadRhino
Rostyslav огромное спасибо!!! Способ действительно очень интересный!!! А можно это сделать как-нибудь по другому??? Кто знает ответте!!!



for (int i=0; i<5; i++)
((TLabel*)Form1->FindComponent("Label"+IntToStr(i))) -> Caption = IntToStr(i);

например:)))

Цитата:

Да и еще подскажите плиз существует ли RxLib для Borland C++ Builder 6 ??? Или может быть для этого можно переделать предыдущие версии этой библиотеки???



да.. существует.. там насколько я знаю патч сверху ставится:)

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