![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | 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;
|
|
#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. |