Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.94/32: Рейтинг темы: голосов - 32, средняя оценка - 4.94
torinets
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 22
1

Вставка изображения

23.04.2010, 20:12. Просмотров 5770. Ответов 7
Метки нет (Все метки)

Здравствуйте, извините за глупый вопрос, но я вообще плохо зная DELPHI.
Мне нужно создать простенькую прогу, я пишу в t.Edit число нажимаю button и должна выходить картинка в Timage. Числа в Tedit я пишу от 1 до 10 и взависимости от числа которое я ввожу должна выводится разная картинка. 10 картинок я для этого подготовил.

Мой уровень знания остановился на этом

Delphi
1
2
3
4
5
6
7
8
9
10
procedure TForm1.btn1Click(Sender: TObject);
begin
if edt1 = 1   then
 
begin
 img1.Picture.LoadFromFile('D:\Nature\1.jpg');
 
end;
 
end.
Помогите пожалуйста
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.04.2010, 20:12
Ответы с готовыми решениями:

Вставка изображения в RichEdit
Хочу в рич эдит запихать картинку вот что не выхожит

Вставка изображения png
Инструмент Image1 вставляешь картинку в формате пнг без фона, но когда...

Вставка изображения по определенным координатам
Помогите решить вопрос. Нужно собрать изображение поверх другого. В...

вставка
У меня есть папай меню в ней строчки копировать вставить .Как сделать так...

Вставка картинки
Как вставить картинку в форму?

7
Анна
0 / 0 / 0
Регистрация: 11.05.2008
Сообщений: 34
23.04.2010, 20:25 2
пишешь так

Delphi
1
2
3
4
5
6
7
8
9
10
procedure TForm1.btn1Click(Sender: TObject);
var n: integer;
begin
n := edit1.text
case n of
 1: img1.Picture.LoadFromFile('D:\Nature\1.jpg');
 2: ..
..
 10..
 end;
end;

end.
0
Mawrat
12827 / 5735 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
23.04.2010, 20:55 3
Удобней в одну строку:
Delphi
1
2
3
4
procedure TForm1.btn1Click(Sender: TObject);
begin
  img1.Picture.LoadFromFile('D:\Nature\' + Edit1.Text + '.jpg');
end;
0
torinets
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 22
23.04.2010, 23:52  [ТС] 4
Спасибо большое, сейчас проверю.

Добавлено через 23 минуты
Сделал так выдаёт ошибку на слове CASE
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;
 
type
  TForm1 = class(TForm)
    btn1: TButton;
    edt1: TEdit;
    img1: TImage;
    procedure btn1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.btn1Click(Sender: TObject);
 
var n: integer;
begin
n := edt1.text
  [COLOR="Red"]case[/COLOR] n of
 1: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\1.jpg');
 2: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\2.jpg');
 3: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\3.jpg');
 4: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\4.jpg');
 5: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\5.jpg');
 6: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\6.jpg');
 7: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\7.jpg');
 8: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\8.jpg');
 9: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\9.jpg');
 0: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\0.jpg');
 
end;
 end.
0
Mawrat
12827 / 5735 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
23.04.2010, 23:57 5
Причина вот в чём:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TForm1.btn1Click(Sender: TObject);
 
var n: integer;
begin
  //Внимание, в конце этой строки не поставлена точка с запятой. Поэтому возникла ошибка.
  n := edt1.text
  case n of
    1: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\1.jpg');
    2: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\2.jpg');
    3: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\3.jpg');
    4: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\4.jpg');
    5: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\5.jpg');
    6: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\6.jpg');
    7: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\7.jpg');
    8: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\8.jpg');
    9: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\9.jpg');
    0: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\0.jpg');
  end;
end.
Удобнее сделать так:
Delphi
1
2
3
4
procedure TForm1.btn1Click(Sender: TObject);
begin
  img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\' + edt1.Text + '.jpg');
end;
0
torinets
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 22
24.04.2010, 00:18  [ТС] 6
Цитата Сообщение от Mawrat Посмотреть сообщение
Причина вот в чём:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TForm1.btn1Click(Sender: TObject);
 
var n: integer;
begin
  //Внимание, в конце этой строки не поставлена точка с запятой. Поэтому возникла ошибка.
  n := edt1.text
  case n of
    1: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\1.jpg');
    2: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\2.jpg');
    3: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\3.jpg');
    4: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\4.jpg');
    5: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\5.jpg');
    6: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\6.jpg');
    7: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\7.jpg');
    8: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\8.jpg');
    9: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\9.jpg');
    0: img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\0.jpg');
  end;
end.
Удобнее сделать так:
Delphi
1
2
3
4
procedure TForm1.btn1Click(Sender: TObject);
begin
  img1.Picture.LoadFromFile('D:\учеба\ТОАУ\1 Лаба\pic\' + edt1.Text + '.jpg');
end;
Как вы сказали в первом варианте поставил точку с запятой, толку 0.
Во втором варианте сделал как вы сказали
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;
 
type
  TForm1 = class(TForm)
    btn1: TButton;
    edt1: TEdit;
    img1: TImage;
    procedure btn1Click(Sender: TObject);
 
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.btn1Click(Sender: TObject);
 
var n: integer;
begin
img1.Picture.LoadFromFile('D:\ГіГ·ГҐГЎГ*\Г’ГЋГЂГ“\1 Г‹Г*ГЎГ*\pic\' + edt1.Text + '.jpg');
 
end;
 end.
[/QUOTE]
Пишу число например 1, выходит ошибка ( она во вложениях)
0
Миниатюры
Вставка изображения   Вставка изображения  
Mawrat
12827 / 5735 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
24.04.2010, 01:09 7
А, это же JPG... Чтобы работать с JPG файлами, надо подключить модуль Jpeg. В нём объявлен класс TJpegImage. Вот через него надо работать с JPG файлами. Попробуй так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
uses
  Jpeg;
 
procedure TForm1.Button1Click(Sender: TObject);
var
  JpgImg : TJpegImage;
begin
  JpgImg := TJpegImage.Create;
  JpgImg.LoadFromFile('D:\ГіГ·ГҐГЎГ*\Г’ГЋГЂГ“\1 Г‹Г*ГЎГ*\pic\' + edt1.Text + '.jpg');
  img1.Picture.Bitmap.Assign(JpgImg);
  JpgImg.Free;
end;
1
torinets
0 / 0 / 0
Регистрация: 23.04.2010
Сообщений: 22
24.04.2010, 10:14  [ТС] 8
Спасибо большое, всё заработало!!!!
0
24.04.2010, 10:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.04.2010, 10:14

вставка строки
Здравствуйте! Помогите пожалуйста исправить ошибку. Давн вумерный массив...

ассемблерная вставка
Разделить один массив на два: в первый передать элементы с нечетными индексами,...

Вставка на асме
подскажите пожалуйста, как вот это правильно написать на асме: mov...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru