![]() |
|
|
#1
|
|||
|
|||
|
Цитата:
Последний раз редактировалось denISRU, 25.03.2009 в 19:57. |
|
#2
|
|||
|
|||
|
сунулся разбираться сам, наваял
Код:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm3 = class(TForm)
Image1: TImage;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
aFile : String;
implementation
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);
begin
TForm3.Image1.Picture.LoadFromFile('d:\temp\ks660.bmp');
end;
end.гляньте кто разбирается - вроде как все на месте - может я путь к файлу не правильно задал? |
|
#3
|
|||
|
|||
|
А чего не пишешь какая ошибка?
Скорее всего, надо так: Image1.Picture.LoadFromFile('d:\temp\ks660. bmp'); "TForm3" - это описание класса и к нему не может быть обращения в коде как к экземпляру этого класса. Тогда уж: Form3.Image1....;, но и этого не требуется. Последний раз редактировалось san-46, 24.03.2009 в 22:08. |
|
#4
|
|||
|
|||
|
в том то и дело что не пишет какая ошибка - выделяет строку целиком, а в меседже сообщает - процедура остановлена изза ошибки в строке № такойто....щас попробую по твоему - первый вариант взял из учебника по делфи
p.s. работает)) - большое спасибо ) Последний раз редактировалось denISRU, 24.03.2009 в 22:17. |
|
#5
|
|||
|
|||
|
задам вопрос тут же - чтоб не создавать новую тему.
вопрос 1. как в имеющемся коде сделать так чтобы использовался файл не из конкретной папки, а из папки с экзешником программы??? Код:
unit Unit3;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm3 = class(TForm)
Image1: TImage;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form3: TForm3;
implementation
{$R *.dfm}
procedure TForm3.Button1Click(Sender: TObject);
begin
Image1.Picture.LoadFromFile('d:\temp\ks660.bmp');
end;
end.![]() |
|
#6
|
|||
|
|||
|
на второй вопрос выродил вот такое - проверьте пожалусто на безграмотность, но все работает
Код:
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
a,b,c,d,e:real ;
begin
a:=StrToFloat(form1.Edit1.Text);// из текста делаем число
b:= Trunc (a/100); //получаем первую цифру
c:= Trunc ((a-b*100)/10); // вторую...
d:= (a-b*100)-c*10; // третью:)
e:=b+c+d; //вычислили сумму
Edit2.Text := FloatTostr(b) ; //следующие 3 промежуточные результаты
edit3.text := FloatTostr(c) ; // для самопроверки
edit4.Text := FloatTostr(d) ;
edit5.Text := FloatTostr(e) ; // выводим результат
end;
end. |
|
#7
|
||||
|
||||
|
Цитата:
Код:
procedure TForm1.Button2Click(Sender: TObject); var s: string; begin s:= ExtractFilePath(ParamStr(0)); ShowMessage(s); end; Цитата:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
x, y, i: Integer;
begin
x:= 248;
y:= 0;
for i:= 1 to 3 do
begin
y:= y + (x Mod 10);
x:= x div 10;
end;
ShowMessage(IntToStr(y));
end; |
|
#8
|
|||
|
|||
|
1.
Код:
Path := ExtractFilePath(Application.ExeName)+'ks660.bmp';
if FileExists(Path) then
Image1.Picture.LoadFromFile(Path);
//где Path : string;Код:
procedure TForm1.Button1Click(Sender: TObject);
var
I, Sum : Integer;
begin
Sum := 0;
for I := 1 to Length(Edit1.Text) do
Sum := Sum + StrToInt(Edit1.Text[i]);
edit5.Text := IntToStr(Sum);
end; |
|
#9
|
|||
|
|||
|
Спасибо за помощь! - вопользовался всем кроме -
procedure TForm1.Button1Click(Sender: TObject); var x, y, i: Integer; begin x:= 248; y:= 0; for i:= 1 to 3 do begin y:= y + (x Mod 10); x:= x div 10; end; ShowMessage(IntToStr(y)); end; т.к. абсолютно не понял принципа работы...)) - но знаний наверное не хватает (а можно коментарий - почему 0, почему 248, что выполняется??? ) |
|
#10
|
||||
|
||||
|
mod - получение дробной части после деления (т.е. 24 mod 10 = 4)
div - получение целой части после деления (т.е. 36 div 10 = 3) Код:
procedure TForm1.Button1Click(Sender: TObject);
var
x, y, i: Integer;
begin
x:= 248; // это случайное число, которое мы будем мучать
y:= 0; // обнуляем переменную, где будет сумма чисел
for i:= 1 to 3 do // повторяем цикл 3 раза (т.к. число трехзначное)
begin
y:= y + (x Mod 10); // Получаем остаток от деления X на 10 и плюсуем его к сумме
x:= x div 10; // отсекаем от X то число, которое обработали
end;
ShowMessage(IntToStr(y)); //выводим результат
end; |
|
#11
|
|||
|
|||
|
спасиб - терь понятно - тоесть х у нас будет то что я в своем коде обозвал
a:=StrToFloat(form1.Edit1.Text); |