-
Мне нужно, чтобы при выполнении некоторых условий, программа показывала картинку, находящуюся в том же каталоге. Вроде все сделал, как в учебникЕ, а не работает(
вот код процедры:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
if ComboBox1.text='A800' then
Begin
RadioButton1.enabled:=true;
Radiobutton2.Enabled:=true;
If Radiobutton1.checked=true then
Begin
Form2.Image1.Picture.LoadFromFile('A800-1');
Form2.showModal;
end;
end;
end;
Где я накосячил?
-
> Где я накосячил?
расширение имени файла не указал как минимум
-
Уже указал, не помогло
-
> Уже указал, не помогло
Ну сформируй полный путь к рисунку.
И вообще, что значит не работает? Посередине экрана написано "ПРОГРАММА НЕ РАБОТАЕТ!" что ли?
-
Нет. Вторая форма с изображение не выходит
-
значит Radiobutton1.checked не true и ComboBox1.text не 'A800'.
кстати, а зачем ComboBox1.text? что такое text в нем? :)
-
Это наименование модели мобильника, по идее каждому наименованию соответствует своя картинка
-
> Это наименование модели мобильника
Да хоть имя Папы Римского)
Отладчик в зубы - и вперед с песней !
-
Думаю что, когда делаем:
> procedure TForm1.ComboBox1Change(Sender: TObject);
то после активации
> RadioButton1.enabled:=true;
он скорее всего не
> If Radiobutton1.checked=true then
даже если вручную ткнуть на Radiobutton1 после активации (чтобы получить checked=true), то
обработчик ComboBox1Change об этом ничего не узнает и соответственно ничего не покажет...
зы нужен друго подход к обработчику ComboBox1Change
-
> antonn © (19.01.10 01:16) [5]
>
> значит Radiobutton1.checked не true и ComboBox1.text не
> 'A800'.
> кстати, а зачем ComboBox1.text? что такое text в нем? :)
наверное, имеется в виду ComboBox со Style = csDropDown. %)
т.е. ComboBox, который поддерживает ввод текста.
-
procedure TForm1.ComboBox1Change(Sender: TObject);
var
s: string;
begin
s := ComboBox1.Text;
if ComboBox1.Text = 'A800' then
begin
RadioButton1.Enabled := True;
Radiobutton2.Enabled := True;
if Radiobutton1.Checked = True then
begin
if FileExists(s + '-1') then
Form2.Image1.Picture.LoadFromFile(s + '-1')
else
ShowMessage('Кто-то спёр мой файл ' + s + '-1' + ' :(');
Form2.showModal;
end;
end;
end;
-
procedure TForm1.ComboBox1Change(Sender: TObject);
var
s: string;
begin
s := ComboBox1.Text;
if s = 'A800' then
begin
RadioButton1.Enabled := True;
Radiobutton2.Enabled := True;
if Radiobutton1.Checked = True then
begin
if FileExists(s + '-1') then
Form2.Image1.Picture.LoadFromFile(s + '-1')
else
ShowMessage('Кто-то спёр мой файл ' + s + '-1' + ':(');
Form2.showModal;
end;
end;
end;
пысы: сделайте плиз уже редактирование и/или превью в форуме...
-
> if Radiobutton1.Checked = True then
говорю еще раз: то что его тут
> RadioButton1.Enabled := True;
это еще не значит, что оно Checked, а когда будем кликать на Checked, то обрабочик ComboBox1Change не вызовется...
-
procedure TForm1.ComboBox1Change(Sender: TObject);
var
s: string;
begin
s := ComboBox1.Text;
if s = 'A800' then
begin
RadioButton1.Enabled := True;
Radiobutton2.Enabled := True;
if Radiobutton1.Checked then
begin
if FileExists(s + '-1') then
Form2.Image1.Picture.LoadFromFile(s + '-1')
else
ShowMessage('Кто-то спёр мой файл ' + s + '-1' + ':(');
Form2.showModal;
end
else
ShowMessage('Кто-то забыл включить Radiobutton1 :(');
end;
end;
-
мое мнение написано в [8] - нужно менять алгоритм работы... или объяснить что требуется...