Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.20;
Скачать: CL | DM;

Вниз

Помогите начинающему!   Найти похожие ветки 

 
школьник   (2003-01-10 16:20) [0]

Не ругайтесь, я самостоятельно пытаюсь разобраться в дельфи. объясните, плз, почему Image3Click не работает?

procedure TForm1.Image3MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Image3.Picture := image2.Picture;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
image3.Picture.Bitmap.Handle := 0;
end;


procedure TForm1.Image3Click(Sender: TObject);
begin
if Image3.Picture = image2.Picture then
Image3.Picture := Image1.Picture;
end;


И как сделать шоб работал?


 
TTCustomDelphiMaster ©   (2003-01-10 16:36) [1]

Image3.Pictute.Assign(Image2.Picture);


 
D   (2003-01-10 16:47) [2]

Наверное, сразу после Image3Click вызывется процедура Image3MouseMove (можно проверить в пошаговой отладке). Так что даже если 1-я картинка и отобразится в Имедже3, то сразу же и затрется...


 
Delirium^.Tremens ©   (2003-01-10 16:50) [3]

>>школьник (10.01.03 16:20)

Согласен с TTCustomDelphiMaster © (10.01.03 16:36)
+

> image3.Picture.Bitmap.Handle := 0;


image3.Picture := nil;


 
школьник   (2003-01-10 17:16) [4]

спасибо большое!
(самому трудно разбираться)


 
школьник   (2003-01-10 18:47) [5]

procedure TForm1.Image3MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if image3.Picture <> Image1.Picture then
Image3.Picture.Assign(Image2.Picture);
end;

procedure TForm1.Image3Click(Sender: TObject);
begin
if Image3.Picture = image2.Picture then
Image3.Picture.Assign(Image1.Picture);
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
image3.Picture := nil;
end;


Вроде сделал как сказали, но опять Image3Click не работает :-((


 
школьник   (2003-01-10 19:14) [6]

А?


 
D   (2003-01-10 19:18) [7]

Картинки сравниваются, наверное, НЕКОРРЕКТНО (if Image3.Picture = image2.Picture then // = false
Image3.Picture.Assign(Image1.Picture);).

ПОПРОБУЙ ввести переменную (номер картинки в Image3.Picture)
1 - картинка из 1-го Image, 2 - из 2-го, 0-нет картинки

var Nom:integer = 0;
procedure TForm1.Image3MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if Nom<>1 then
begin Image3.Picture.Assign(Image2.Picture); Nom:=2
end;
end;

procedure TForm1.Image3Click(Sender: TObject);
begin
if Nom=2 then
begin Image3.Picture.Assign(Image1.Picture); Nom:=1
end;
end;

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
image3.Picture := nil; Nom:=0;
end;




 
школьник   (2003-01-10 22:56) [8]

Работает. А если картинок много? Тогда наверное вместо переменной можно использовать Image1.Tag? Оно ведь для этого и предназначено? Как-то громоздко получается, неужели нельзя сделать попроще?


 
школьник   (2003-01-11 10:00) [9]

up



Страницы: 1 вся ветка

Текущий архив: 2003.01.20;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
6-62698
Grigor
2002-11-13 19:48
2003.01.20
Как получить в строковой переменной день недели


14-62806
Supreme
2003-01-01 03:14
2003.01.20
С наступающим 2004 годом!!!!


14-62735
AndrewBee
2002-12-31 20:01
2003.01.20
Софт для быстрой разработки компонент


4-62906
XED
2002-12-03 15:34
2003.01.20
Как перехватить запуск какойта проги!!!


1-62634
XPatriot[d.m.b]
2003-01-09 00:02
2003.01.20
Функция random.