Конференция "Media" » Загрузка изображения в Дельфи [D7, WinXP]
 
  • SpyCrypt © (18.01.10 13:21) [0]
    Мне нужно, чтобы при выполнении некоторых условий, программа показывала картинку, находящуюся в том же каталоге. Вроде все сделал, как в учебникЕ, а не работает(
    вот код процедры:
    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;

    Где я накосячил?
  • DVM © (18.01.10 14:33) [1]

    > Где я накосячил?

    расширение имени файла не указал как минимум
  • SpyCrypt © (18.01.10 14:51) [2]
    Уже указал, не помогло
  • DVM © (18.01.10 21:20) [3]

    > Уже указал, не помогло

    Ну сформируй полный путь к рисунку.

    И вообще, что значит не работает? Посередине экрана написано "ПРОГРАММА НЕ РАБОТАЕТ!" что ли?
  • SpyCrypt © (19.01.10 00:19) [4]
    Нет. Вторая форма с изображение не выходит
  • antonn © (19.01.10 01:16) [5]
    значит Radiobutton1.checked не true и ComboBox1.text не 'A800'.
    кстати, а зачем ComboBox1.text? что такое text в нем? :)
  • SpyCrypt © (19.01.10 20:37) [6]
    Это наименование модели мобильника, по идее каждому наименованию соответствует своя картинка
  • Сергей М. © (19.01.10 21:17) [7]

    > Это наименование модели мобильника


    Да хоть имя Папы Римского)
    Отладчик в зубы - и вперед с песней !
  • brother © (20.01.10 04:33) [8]
    Думаю что, когда делаем:

    > procedure TForm1.ComboBox1Change(Sender: TObject);

    то после активации

    > RadioButton1.enabled:=true;

    он скорее всего не

    > If Radiobutton1.checked=true then

    даже если вручную ткнуть на Radiobutton1 после активации (чтобы получить checked=true), то
    обработчик ComboBox1Change об этом ничего не узнает и соответственно ничего не покажет...
    зы нужен друго подход к обработчику ComboBox1Change
  • grisme © (20.01.10 12:00) [9]

    > antonn ©   (19.01.10 01:16) [5]
    >
    > значит Radiobutton1.checked не true и ComboBox1.text не
    > 'A800'.
    > кстати, а зачем ComboBox1.text? что такое text в нем? :)


    наверное, имеется в виду ComboBox со Style = csDropDown. %)
    т.е. ComboBox, который поддерживает ввод текста.
  • Дмитрий Белькевич (26.01.10 00:07) [10]

    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;

  • Дмитрий Белькевич (26.01.10 00:11) [11]

    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;



    пысы: сделайте плиз уже редактирование и/или превью в форуме...
  • brother © (26.01.10 06:35) [12]
    > if Radiobutton1.Checked = True then

    говорю еще раз: то что его тут

    > RadioButton1.Enabled := True;

    это еще не значит, что оно Checked, а когда будем кликать на Checked, то обрабочик ComboBox1Change не вызовется...
  • Дмитрий Белькевич (26.01.10 16:56) [13]

    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;

  • brother © (27.01.10 04:35) [14]
    мое мнение написано в [8] - нужно менять алгоритм работы... или объяснить что требуется...
 
Конференция "Media" » Загрузка изображения в Дельфи [D7, WinXP]
Есть новые Нет новых   [120076   +28][b:0][p:0.002]