![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Добрый день. Дали несколько заданий на выполнение. Учусь дистанционно. У преподавателя спросить не как. Писал в универ, о том что нужна помощь, проигнорили. Это я пишу для тех то будет просто флудить. Один раз мне у вас тут уже помогли, за что огромное спасибо. На других форумах просто засирали.
Вот описание задания. ------------------------ Задание 3 Численные значения переменных следует преобразовать в строки и только после преобразования выводить в компонент Memo. Для преобразования переменных типа Real в переменную типа строка используется функция FloatToStr(). Слово Float обозначает переменную с плавающей запятой любого типа (тип Real один из многих типов таких переменных с дробной частью). В круглых скобках записывается имя численной переменной, которую преобразуют в строку. Скопируйте строку вывода и вставьте после второй строки вывода в поле Мемо. В круглых скобках функцию преобразования в строку значения переменной Unom. Сохраните программу, запустите на исполнение и убедитесь, что в поле вывода появилось число, которое соответствует номинальному напряжению. Вывод в одну строку в поле вывода можно сделать, если сложить несколько строк. Сложение строк называется командой конкатенации и обозначается символом сложения (+). В раздел описания переменных добавьте имя переменной типа строка, например, str3. Допишите в код процедуры следующую строку: str3:=str1+FloatToStr(Unom)+str2; и выведите её в поле вывода. После запуска программы, посмотрите правильно ли сделан вывод. Выведите в поле вывода значение Snom одной строкой с обозначением имени переменной, её числовым значением и единицей измерения. ----------------------------- Вот код программы Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Unom, Snom: Real;
str1, str2, str3: string;
begin
Unom:=10.5; {íîìèíàëüíîå íàïðÿæåíèå â êÂ}
Snom:=25000; {ïîëíàÿ ìîùíîñòü â êÂÀ}
str1:= 'Unom= ';
str2:= 'kB';
Memo1.Lines.Add(str1);
Memo1.Lines.Add(str2);
FloatToStr(Unom);
str3:=str1+FloatToStr(Unom)+str2;
end;
end.И вот что только выводиться |
|
#2
|
||||
|
||||
|
Код:
... str3:=str1+FloatToStr(Unom)+str2; Memo1.Lines.Add(str3);// ìîùâíîñâòâü êÂÀ end; |
|
#3
|
|||
|
|||
|
Цитата:
|
|
#4
|
||||
|
||||
|
вот так надо:
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Memo1: TMemo;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Unom, Snom: Real;
str1, str2, str3, str4, str5: string;
begin
Unom:=10.5;
Snom:=25000;
str1:= 'Unom= ';
str2:= 'kB';
str5:= 'Snom= ';
Memo1.Clear; // Ochistka polya Memo1
FloatToStr(Unom);
str3:=str1+FloatToStr(Unom)+str2; // formirovanie stroki
Memo1.Lines.Add(str3); // vyvod pervoy stroki v Memo1
FloatToStr(Snom);
str4:=str5+FloatToStr(Snom)+str2;
Memo1.Lines.Add(str4); // vyvod vtoroy stroki v Memo1
end;
end.
|
|
#5
|
|||
|
|||
|
Цитата:
Спасибо большое человеческое |
|
#6
|
|||
|
|||
|
Добрый день. В лабораторной №4 вроде все получилось вот только когда в код вписываю эту строчку:
Код:
memo1.Lines.Add( 'Unom =' +Listbox1.Items[Listbox1.ItemIndex]+' êÂ' ); то выходит такая ошибка при запуске: ![]() Вот сам код программы: Код:
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
Unom :real;
begin
memo1.Clear;
memo1.Lines.Add( 'Unom =' +Listbox1.Items[Listbox1.ItemIndex]+' êÂ' );
memo1.Lines.Add( 'Unom =' +combobox1.Items[combobox1.ItemIndex]+' êÂ');
{memo1.Lines.Add(combobox1.Items[1]);
memo1.Lines.Add(combobox1.Items[2]);
memo1.Lines.Add(combobox1.Items[3]);
memo1.Lines.Add(combobox1.Items[4]);
memo1.Lines.Add(combobox1.Items[5]);
memo1.Lines.Add(combobox1.Items[6]);
memo1.Lines.Add(combobox1.Items[7]);
memo1.Lines.Add(combobox1.Items[8]);
memo1.Lines.Add(combobox1.Items[9]);
memo1.Lines.Add(combobox1.Items[10]);
memo1.Lines.Add(combobox1.Items[11]);}
ListBox1.Items[0]:='0,4';
listBox1.Items[1]:=Combobox1.Items[1];
end;
procedure TForm1.FormCreate(Sender: TObject);
var
i : integer;
begin
Button1.Caption:='Ñòàðò';
For i:=0 to 11 do ListBox1.Items[i]:= ComboBox1.Items[i];
end;
end.Подскажите пожалуйста что делаю не так. Заранее огромное спасибо. |
|
#7
|
||||
|
||||
|
У вас при запуске ещё не выбран пункт в Listbox, отсюда и выход из диапазона, нужно задавать явно, напр. Listbox1.Items[0]
|
|
#8
|
|||
|
|||
|
Цитата:
|
|
#9
|
|||
|
|||
|
Спасибо вроде получается у самого.
Последний раз редактировалось Zemius, 03.03.2015 в 18:23. |
|
#10
|
|||
|
|||
|
Добрый вечер.
Подскажите в чем ошибка: http://pixs.ru/showimage/Bezimyanni_...1_16349412.png И вторая ошибка не выводит картинки,Ошибок не выдает, выбор осуществляется нормально, но картинки не появляются. Код:
type
TForm1 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
Label2: TLabel;
ComboBox2: TComboBox;
LabeledEdit1: TLabeledEdit;
LabeledEdit2: TLabeledEdit;
LabeledEdit3: TLabeledEdit;
LabeledEdit4: TLabeledEdit;
LabeledEdit5: TLabeledEdit;
LabeledEdit6: TLabeledEdit;
CheckBox1: TCheckBox;
BitBtn1: TBitBtn;
Memo1: TMemo;
Image1: TImage;
procedure FormCreate(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
rho:real;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
ComboBox1.ItemIndex:=0;
ComboBox2.ItemIndex:=0;
rho:=25;
TCheckBox.Checkbox:=True;
TCheckBox.TCaption:='Êîëüöåâîé';
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=True;
LabeledEdit4.Visible:=True;
LabeledEdit5.Visible:=True;
LabeledEdit6.Visible:=True;
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
case ComboBox1.ItemIndex of
0:rho:=25;
1:rho:=50;
2:rho:=100;
3:rho:=150;
4:rho:=300;
5:rho:=1000;
6:rho:=3000;
7:rho:=10000;
end; {Case}
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
memo1.Lines.Add(ComboBox1.Items[ComboBox1.ItemIndex]+' rho = '+FloatToStr(rho)+' Îì*ì');
end;
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
case ComboBox2.itemindex of
0: begin
Image1.Picture.LoadFromFile('1.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=false;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {0}
1: begin
Image1.Picture.LoadFromFile('2.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=false;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {1}
2: begin
Image1.Picture.LoadFromFile('2.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=false;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {2}
3: begin
Image1.Picture.LoadFromFile('3.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=True;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {3}
end; {case }
end;
end. |
|
#11
|
|||
|
|||
|
Добрый вечер.
Подскажите в чем ошибка: http://pixs.ru/showimage/Bezimyanni_...1_16349412.png И вторая ошибка не выводит картинки,Ошибок не выдает, выбор осуществляется нормально, но картинки не появляются. Код:
type
TForm1 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
ComboBox1: TComboBox;
Label2: TLabel;
ComboBox2: TComboBox;
LabeledEdit1: TLabeledEdit;
LabeledEdit2: TLabeledEdit;
LabeledEdit3: TLabeledEdit;
LabeledEdit4: TLabeledEdit;
LabeledEdit5: TLabeledEdit;
LabeledEdit6: TLabeledEdit;
CheckBox1: TCheckBox;
BitBtn1: TBitBtn;
Memo1: TMemo;
Image1: TImage;
procedure FormCreate(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
rho:real;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
ComboBox1.ItemIndex:=0;
ComboBox2.ItemIndex:=0;
rho:=25;
TCheckBox.Checkbox:=True;
TCheckBox.TCaption:='Êîëüöåâîé';
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=True;
LabeledEdit4.Visible:=True;
LabeledEdit5.Visible:=True;
LabeledEdit6.Visible:=True;
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
case ComboBox1.ItemIndex of
0:rho:=25;
1:rho:=50;
2:rho:=100;
3:rho:=150;
4:rho:=300;
5:rho:=1000;
6:rho:=3000;
7:rho:=10000;
end; {Case}
end;
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
memo1.Lines.Add(ComboBox1.Items[ComboBox1.ItemIndex]+' rho = '+FloatToStr(rho)+' Îì*ì');
end;
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
case ComboBox2.itemindex of
0: begin
Image1.Picture.LoadFromFile('1.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=false;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {0}
1: begin
Image1.Picture.LoadFromFile('2.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=false;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {1}
2: begin
Image1.Picture.LoadFromFile('2.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=false;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {2}
3: begin
Image1.Picture.LoadFromFile('3.jpg');
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=True;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
end; {3}
end; {case }
end;
end. |
|
#12
|
||||
|
||||
|
1. Попробуйте изменить:
Код:
Image1.Visible:=false; Код:
Image1.Visible:=true; Код:
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
LabeledEdit1.Visible:=True;
LabeledEdit2.Visible:=True;
LabeledEdit3.Visible:=False;
LabeledEdit4.Visible:=false;
LabeledEdit5.Visible:=false;
LabeledEdit6.Visible:=false;
Image1.Visible:=false;
case ComboBox2.itemindex of
0: begin
Image1.Picture.LoadFromFile('1.jpg');
end; {0}
1: begin
Image1.Picture.LoadFromFile('2.jpg');
end; {1}
2: begin
Image1.Picture.LoadFromFile('2.jpg');
end; {2}
3: begin
Image1.Picture.LoadFromFile('3.jpg');
LabeledEdit3.Visible:=True;
end; {3}
end; {case }
Image1.Visible :=True;
end; |
| Этот пользователь сказал Спасибо Страдалецъ за это полезное сообщение: | ||
Zemius (08.03.2015)
| ||
|
#13
|
||||
|
||||
|
Продолжение позерства:
Код:
procedure TForm1.ComboBox2Change(Sender: TObject); begin LabeledEdit1.Visible:=True; LabeledEdit2.Visible:=True; LabeledEdit3.Visible:=False; LabeledEdit4.Visible:=false; LabeledEdit5.Visible:=false; LabeledEdit6.Visible:=false; Image1.Visible:=false; Image1.Picture.LoadFromFile(inttostr(ComboBox2.itemindex)+'.jpg'); LabeledEdit3.Visible:=(ComboBox2.itemindex = 3); Image1.Visible :=True; end; |
| Этот пользователь сказал Спасибо M.A.D.M.A.N. за это полезное сообщение: | ||
Zemius (08.03.2015)
| ||
|
#14
|
||||
|
||||
|
Э нет, не пойдет прямая подстановка индекса. У него для значения 1 и 2 картинки одинаковые.
![]() |
|
#15
|
||||
|
||||
|
Айтемсы комбобоска могут хранить объекты, в которых может быть прописан путь к файлу.
Так что: Код:
Image1.Picture.LoadFromFile(TFoo(ComboBox2.items.objects[ComboBox2.itemindex]).PicturePath); |