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

Вниз

Как реализовать в Delphi аналог процедуры read?   Найти похожие ветки 

 
Morrison   (2004-06-11 21:57) [0]

Мастера Делфей! Помогите новичку!

Не могу придумать как написать функцию (или хотя бы аналог процедуры read), которая возвращает string путем создания новой простой формы (label, edit две кнопки ОК и Cancel).


 
DrPass ©   (2004-06-11 22:06) [1]

InputBox и InputQuery?


 
Morrison ©   (2004-06-11 22:13) [2]

Не сочтите ламером, но я ничего не понял...


 
Morrison ©   (2004-06-11 22:15) [3]

Ага... Теперь понял, спасибо :)


 
Palladin ©   (2004-06-11 22:16) [4]

Ламером не ламером, это еще не ясно... но вот справку посмотреть не удосужился...


 
Palladin ©   (2004-06-11 22:16) [5]

Ага... таки удосужился :)


 
Morrison ©   (2004-06-11 22:19) [6]

Это конечно хорошо, что такая штука уже есть, но было бы интересно узнать, как ее написать вручную.


 
Anatoly Podgoretsky ©   (2004-06-11 22:20) [7]

Форма, Tlabel, Redit и две кнопки ОК и Cancel. Код писать не требуется, достаточно только рисования.


 
Morrison ©   (2004-06-11 22:22) [8]

Почему же не требуется?


 
Anatoly Podgoretsky ©   (2004-06-11 22:24) [9]

Да просто действия по закрытию или отмене можно задать через свойства кнопок.


 
Morrison ©   (2004-06-11 22:28) [10]

Это понятно. Имелась ввиду универсальная функция, создающая такую форму и возвращающая переменную типа string.
Чтобы можно было написать что-то типа:
MyComboBox.Items.Add(<требуемая функция>);


 
Palladin ©   (2004-06-11 22:29) [11]


type
 TMyInputQuery = class(TForm)
   editInput: TEdit;
   btnOK: TButton;
   btnCancel: TButton;
   lblCaption: TLabel;
 end;

Function MyInputQuery(Const p_strCation,p_strPrompt:String;Var rp_strResult:String):Boolean;
implementation

Function MyInputQuery(Const p_strCation,p_strPrompt:String;Var rp_strResult:String):Boolean;
Begin
With TMyInputQuery.Create(Application) Do
 Try
  Caption:=p_strCation;
  lblCaption.Caption:=p_strPrompt;
  editInput.Text:=rp_strResult;
  Result:=ShowModal=mrOK;
  If Result Then rp_strResult:=editInput.Text;
 Finally
  Free;
 End;
End;



 
Palladin ©   (2004-06-11 22:31) [12]


> Morrison ©   (11.06.04 22:28) [10]

Чуть чуть изменить то что выше...


 
Anatoly Podgoretsky ©   (2004-06-11 22:33) [13]

Morrison ©   (11.06.04 22:28) [10]
Какой может быть выхов в виде функции если у нее минимум два значения, при нажатии кнопки Ok или Cancel, ведь второе предполагает отсутствие результата


 
Morrison ©   (2004-06-11 22:33) [14]

Спасибо!


 
Morrison ©   (2004-06-11 22:35) [15]

Anatoly Podgoretsky ©, это не принципиально.


 
Anatoly Podgoretsky ©   (2004-06-11 22:39) [16]

Принципиально вче, что ты заявляешь как критерий, для этого смотрим сообщение [10]


 
Morrison ©   (2004-06-11 22:42) [17]

Согласен, лажанулся.

Вся соль оказалась в функции ShowModal. Вот ее-то мне и не хватало для спокойной жизни...


 
Mim1 ©   (2004-06-11 22:48) [18]


> [13] Anatoly Podgoretsky ©   (11.06.04 22:33)
> Morrison ©   (11.06.04 22:28) [10]
> Какой может быть выхов в виде функции если у нее минимум
> два значения, при нажатии кнопки Ok или Cancel, ведь второе
> предполагает отсутствие результата


Abort? (silent exception)


 
Morrison ©   (2004-06-11 23:01) [19]

Вопрос по поводу
Result := ShowModal = mrOK;
Каким образом система догадывается, что кнопка btnOk и есть та самая mrOk?


 
Palladin ©   (2004-06-11 23:18) [20]

изучи свойства кнопок



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

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

Наверх





Память: 0.48 MB
Время: 0.046 c
14-1086896293
gn
2004-06-10 23:38
2004.06.27
В обозримом будущем ожидается появление саморазмножающихся нанома


3-1085756667
Bizons
2004-05-28 19:04
2004.06.27
GEN_ID() в IB6


8-1080722002
Pul
2004-03-31 12:33
2004.06.27
Битмап в метафайле


1-1087301878
Dysan
2004-06-15 16:17
2004.06.27
глюки исчезающего TChart


14-1086702048
Weber
2004-06-08 17:40
2004.06.27
Копировать с CD на CD





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский