наткнулся на форуме My Visual Database на такой вопрос
На форме 2 комбибокса. Допустим, в первом список 1. «русский», 2. «удмуртский». Во втором, также допустим, 1. «понимаю», 2. «воломон».
Если выбрать в первом комбибоксе русский, то при выборе во втором комбибоксе «понимаю», ничего не происходит, а если выбрать «воломон», то должно выйти сообщение «Значения не соответствуют». Если же выбрать в первом «удмуртский», а во втором «воломон» — все хорошо продолжает работать, а если «понимаю», то такое же окно с сообщением. Спасибо!
Ну в общем написал ему пример
procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
if (Form1.ComboBox1.ItemIndex = 1) AND (Form1.ComboBox2.ItemIndex = 1) then else ShowMessage('Значения не соответствуют');
end;
procedure Form1_OnShow (Sender: TObject; Action: string);
begin
Form1.ComboBox1.Items.Add('Русский');
Form1.ComboBox1.Items.Add('Удмуртский');
Form1.ComboBox2.Items.Add('Понимаю');
Form1.ComboBox2.Items.Add('Воломон');
end;
begin
end.
Далее оказалось, что слов может быть много и нужны соответствия удмуртскому языку.
var
UdWord: string;
procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
if (Form1.ComboBox1.Text = 'Удмуртский') AND (UdmurtWord(Form1.ComboBox2.Text)) then else ShowMessage('Значения не соответствуют');
end;
procedure Form1_OnShow (Sender: TObject; Action: string);
begin
Form1.ComboBox1.Items.Add('Русский');
Form1.ComboBox1.Items.Add('Удмуртский');
Form1.ComboBox2.Items.Add('Понимаю');
Form1.ComboBox2.Items.Add('Воломон');
Form1.ComboBox2.Items.Add('Тосько');
Form1.ComboBox2.Items.Add('Знаю');
Form1.ComboBox2.Items.Add('Делаю');
UdWord := 'Воломон, Тосько';
end;
function UdmurtWord (Word: string): Boolean;
var
i:integer;
begin
if ( pos(Word,UdWord)) then Result := True else Result := False;
end;
begin
end.
Когда я писал второй пример, то предположил, что нужно было создавать проверку слов сразу на оба языка.
God-damn, I was right
Спасибо! Все работает. Только подскажите, как добавить соответствие со вторым значением из первого комбобокса, т.е. при выборе «Русский», чтобы он выдавал сообщение на удмуртские слова?
var
UdWord,RuWord: string;
procedure Form1_ComboBox2_OnChange (Sender: TObject);
begin
if (UdmurtWord(Form1.ComboBox2.Text)) then else ShowMessage('Значения не соответствуют');
end;
procedure Form1_OnShow (Sender: TObject; Action: string);
begin
Form1.ComboBox1.Items.Add('Русский');
Form1.ComboBox1.Items.Add('Удмуртский');
Form1.ComboBox2.Items.Add('Понимаю');
Form1.ComboBox2.Items.Add('Воломон');
Form1.ComboBox2.Items.Add('Тосько');
Form1.ComboBox2.Items.Add('Знаю');
Form1.ComboBox2.Items.Add('Делаю');
UdWord := 'Воломон, Тосько';
RuWord := 'Понимаю, Знаю, Делаю';
end;
function UdmurtWord (Word: string): Boolean;
var
i:integer;
begin
if (Form1.ComboBox1.Text = 'Удмуртский') then
if (pos(Word,UdWord)) then Result := True else Result := False;
if (Form1.ComboBox1.Text = 'Русский') then
if (pos(Word,RuWord)) then Result := True else Result := False;
end;
begin
end.
3 Comments
Привет, мой дорогой друг
Я студент
Ваша замечательная программа под названием
Я видел BookLibrary v5.2. Можете ли вы прислать мне неисполняемую версию (оригинальную версию) этого проекта для лучшего изучения? Спасибо.
https://disk.yandex.ru/d/uWQHapmBKD-kKQ
Muchas gracias. ?Como puedo iniciar sesion?