|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Исключение переменной, если...
Всем привет.
Столкнулся с проблемой, которую сам никак не могу решить. Есть TEdit (Edit3), в который я хочу выводить значение из ComboBox и несколько переменных, но что если одно из полей TEdit (Edit1 или Edit2) пустое. Как исключить добавление переменной например Vterm_id, если поле Edit1.Text осталось пустым? Код:
procedure TForm1.Button1Click(Sender: TObject); begin Signature := 'siganture='; Vterm_id := Edit1.Text + '&'; User_ip := Edit2.Text + '&'; Edit3.Text := ComboBox1.Items [ComboBox1.ItemIndex] + Vterm_id + User_ip + Signature; end; |
#2
|
||||
|
||||
Чтобы код в одну строку то IfThen().
Пишу программы за еду. __________________ |
#3
|
||||
|
||||
TStringBuilder, TStringList;
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#4
|
|||
|
|||
Код:
Edit3.Text := ComboBox1.Items [ComboBox1.ItemIndex] + IfThen(Edit1.Text<>'',Edit1.Text+'&','') + IfThen(Edit2.Text<>'',Edit2.Text+'&','') + 'siganture='; Хотя я бы за такой код в боевом проекте руки бы оторвал - оно ж не читабельно, потом, через год, например, хрен вспомнишь что это такое было. |
#5
|
|||
|
|||
Код:
procedure TForm1.Button1Click(Sender: TObject); begin Signature := 'siganture='; if (edit1.text='') and (edit2.text='') then showmessage('Все поля пустые') else if (edit1.text<>'') and (edit2.text<>'') then begin Vterm_id := Edit1.Text + '&'; User_ip := Edit2.Text + '&'; Edit3.Text := ComboBox1.Items [ComboBox1.ItemIndex] + Vterm_id + User_ip + Signature; end; If edit1.text='' then begin User_ip := Edit2.Text + '&'; Edit3.Text := ComboBox1.Items [ComboBox1.ItemIndex] + User_ip + Signature; end; if edit2.text='' then begin Vterm_id := Edit1.Text + '&'; Edit3.Text := ComboBox1.Items [ComboBox1.ItemIndex] + Vterm_id + Signature; end; end; Вот так. Последний раз редактировалось M.A.D.M.A.N., 28.10.2016 в 17:12. |