Форум: "Компоненты";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];
ВнизПеремещение компонента как в Delphi Найти похожие ветки
← →
Sliski Slimak © (2004-07-12 00:20) [0]Господа кодеры, подскажите, как правильней организовать перемещение и рисайзинг компонента, как в Delphi... Сделал с помощью 9 Shape"ов- аж самому страшно....
← →
jack128 © (2004-07-12 01:20) [1]MouseDown - выставляешь флаг перемещения или флаг ресайзинга (в зависимости от того куда кликнули)
MouseMove - перемещаешь контрол или меняешь его размеры
MouseDown - сбрасываешь флаг перемещения и ресайзинга
← →
Sun bittern © (2004-07-12 10:24) [2]Ищи в сети StretchHandle - TStretchHandle
← →
NAlexey © (2004-07-13 09:50) [3]>Sun bittern © (12.07.04 10:24) [2]
Какашка редкостная этот TStretchHandle
← →
Sliski Slimak © (2004-07-14 22:43) [4]Я на сайте http://mysoft.webs.com.ua/excomponent.html ещё нашёл очень интересный компонент по сабжу.. тестирую...
Extension Library -целая библиотека полезных компонент, в частности, компонент позволяет добавить в приложение возможности визуального дизайнера. По своим характеристикам он максимально приближен к визульному дизайнеру Delphi. Размер 184 kb. Автор: Balabuyev Yevgeny e-mail: stalcer@rambler.ru
← →
SelloutS (2004-07-15 04:29) [5]
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
x1, y1: Integer;
b: Byte;
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
b := 1;
x1 := X;
y1 := Y;
end;
procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
b := 0;
end;
procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
if b = 1 then begin
Button1.Left := Button1.Left + X - x1;
Button1.Top := Button1.Top + Y - y1;
end;
end;
end.
← →
Sandman25 © (2004-07-15 12:42) [6][5] SelloutS (15.07.04 04:29)
Вот за такие if b = 1 убивать мало. Используйте либо Boolean, либо перечислимый тип.
← →
Sun bittern © (2004-07-15 19:43) [7]NAlexey © (13.07.04 09:50) [3]
Какашка не какашка, если руки есть подправить мона ;)
← →
NAlexey © (2004-07-16 10:01) [8]Sun bittern © (15.07.04 19:43) [7]
Посмотри как сделан дизайнер в DreamControls и поймешь о чем я:)
Страницы: 1 вся ветка
Форум: "Компоненты";
Текущий архив: 2005.07.18;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.077 c