Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.09.26;
Скачать: [xml.tar.bz2];

Вниз

Процедура открытия модального окна   Найти похожие ветки 

 
user1   (2004-09-09 09:24) [0]

Подскажите, пожалуйста!
Нужно написать процедуру отрытия модальных окон,
используя свойство Tag вызывающего их компонента.
Короче, у меня это выглядит так:

TForm1.Button1Click...
begin
 Form2:=TForm2.Create(Application);
 Form2.ShowModal;
end

TForm1.Button2Click...
begin
 Form3:=TForm3.Create(Application);
 Form3.ShowModal;
end

TForm1.Button3Click...
begin
 Form4:=TForm4.Create(Application);
 Form4.ShowModal;
end

Как видите, текст один и тот же.
Хотелось бы делать это одной процедурой
в зависимости от, скажем, значения свойства Tag кнопки Button,
и присвоить другим кнопкам ее событие OnClick и вызывыть
нужные формы. :

TForm1.Button3Click...
begin
 case (sender as TButton).Tag of
   1: // Спасибо, если укажете правильный путь
   2: // С уважением, :)
 end
end


 
46_55_41_44 ©   (2004-09-09 09:40) [1]

Слушай ты же сам уже ответ написал :)))

TForm1.Button3Click(Sender: TObject);
begin
case (sender as TButton).Tag of
  1: begin
      Form2:=TForm2.Create(Application);
      Form2.ShowModal;
     end;    
  2: begin
      Form3:=TForm3.Create(Application);
      Form3.ShowModal;
     end;    
  3: begin
      Form4:=TForm4.Create(Application);
      Form4.ShowModal;
     end;    
end
end;

просто после всего этого в Object Inspector в OnClick каждой формы указываешь Button3Click... и все!!!


 
46_55_41_44 ©   (2004-09-09 09:40) [2]

Слушай ты же сам уже ответ написал :)))

TForm1.Button3Click(Sender: TObject);
begin
case (sender as TButton).Tag of
  1: begin
      Form2:=TForm2.Create(Application);
      Form2.ShowModal;
     end;    
  2: begin
      Form3:=TForm3.Create(Application);
      Form3.ShowModal;
     end;    
  3: begin
      Form4:=TForm4.Create(Application);
      Form4.ShowModal;
     end;    
end
end;

просто после всего этого в Object Inspector в OnClick каждой кнопки указываешь Button3Click... и все!!!


 
46_55_41_44 ©   (2004-09-09 09:44) [3]

Пардон за дублирование... просто ошибся в первый раз. Вместо слова "формы" надо было написать слово "кнопки"...


 
wal ©   (2004-09-09 10:07) [4]


TForm1.Button3Click(Sender: TObject);
var
 Form: TForm;
begin
case (sender as TButton).Tag of
 1:  Form:=TForm2.Create(Application);
 2:  Form:=TForm3.Create(Application);
 3:  Form:=TForm4.Create(Application);
 else Exit
end;
Form.ShowModal;
Form.Free
end;

Если, конечно, TFormX - наследники TForm.

С уважением.


 
Ega23 ©   (2004-09-09 10:10) [5]

кстати, можно и так:
TForm1.Button3Click...
begin
case (sender as TButton).Tag of
  1: Button1.OnClick(nil);
  2: Button2.OnClick(nil);
end
end



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

Форум: "Основная";
Текущий архив: 2004.09.26;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.055 c
14-1094778940
Vah
2004-09-10 05:15
2004.09.26
Реклама


14-1094399846
Igorek
2004-09-05 19:57
2004.09.26
Сможем ли мы когда-нибуть увидеть Большой Взрыв и другие космосы?


1-1094817464
AlexA
2004-09-10 15:57
2004.09.26
service application, Thread


3-1093842555
Санёк
2004-08-30 09:09
2004.09.26
ADODataSet логическая блокировка записи


1-1094808009
jonik
2004-09-10 13:20
2004.09.26
Создание построителя отчета





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский