Форум: "Начинающим";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];
Вниз"Дочерние объекты" Найти похожие ветки
← →
Yel (2006-08-14 15:57) [0]Создаю одну картинку, затем вторую поменьше. Нужно чтобы вторая лежала на первой, таскалась всегда с ней и "умирали" они чтоб тоже вместе.
img2:=TImage.Create(img2); - работает
img2.Parent:=img1; - нельзя, так как Parent видите ли может быть только TWinControl, но никак не TImage.
← →
Zeqfreed © (2006-08-14 16:00) [1]Назначай одного родителя и вызывай BringToFront для картинки, которая должна располагаться поверх другой.
← →
EvS © (2006-08-14 16:06) [2]Выводи обе на один Image.
← →
Yel (2006-08-14 16:19) [3]> Zeqfreed © (14.08.06 16:00) [1]
> Назначай одного родителя и вызывай BringToFront для картинки,
> которая должна располагаться поверх другой.
Мне нужно, чтобы таская одну картинку, вторая таскалась за ней сама.
Насколько я понимаю, BringToFront помещает объект на передний план и все, а по поводу одного родителя - это не свяжет два объекта (или я ошибаюсь = ) ).
> EvS © (14.08.06 16:06) [2]
> Выводи обе на один Image.
Мне нужно два объекта каждый "со своими событиями и обработчиками"
← →
Gydvin © (2006-08-14 16:26) [4]
> > EvS © (14.08.06 16:06) [2]
> > Выводи обе на один Image.
> Мне нужно два объекта каждый "со своими событиями и обработчиками"
ну так смотри координаты меньшей и если клик в ее зоне......
← →
Yel (2006-08-14 16:31) [5]Ну так проще чтоб изменяя координаты 1-й, у второй они изменялись автоматически, чтоб без обработки координат вызывался свой обработчик и т.д.
А вообще, может сделать новый объект на основе TWinControl, с картинкой на переднем плане.
← →
Elen © (2006-08-14 16:40) [6]Yel так подойдет?:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls;
type
TForm1 = class(TForm)
Image1: TImage;
Image2: TImage;
procedure Image1DragDrop(Sender, Source: TObject; X, Y: Integer);
procedure Image1EndDock(Sender, Target: TObject; X, Y: Integer);
procedure Image1EndDrag(Sender, Target: TObject; X, Y: Integer);
procedure Image1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var lt,p:Tpoint;
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Image1DragDrop(Sender, Source: TObject; X, Y: Integer);
begin
GetCursorPos(p);
end;
procedure TForm1.Image1EndDock(Sender, Target: TObject; X, Y: Integer);
begin
GetCursorPos(p);
end;
procedure TForm1.Image1EndDrag(Sender, Target: TObject; X, Y: Integer);
begin
GetCursorPos(p);
end;
procedure TForm1.Image1DragOver(Sender, Source: TObject; X, Y: Integer;
State: TDragState; var Accept: Boolean);
begin
GetCursorPos(p);
p:=ScreenToClient(p);
Image1.Top:=p.y-10;
Image1.Left :=p.x-10;
Image2.Left:=lt.X +Image1.Left;
Image2.top:=lt.Y +Image1.Top;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
lt.X:=Image2.Left-Image1.Left ;
lt.Y:=Image2.Top-Image1.Top;
end;
end.
← →
Zeqfreed © (2006-08-14 18:08) [7]Создать объект-контейнер. Создать объекты и присвоить контейнер в качестве родителя. Выровнять объекты в контейнере. Двигать контейнер для передвижения обоих объектов.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.036 c