unidade de unidade1;
interface
usos
Janelas, mensagens, sysutils, variantes, classes, gráficos, controles, formulários,
Diálogos, extctrls, stdctrls, jpeg;
const lmousedown = false;
tipo
Tform1 = classe (tform)
Edit1: TEDIT;
Painel2: tpanel;
Painel1: tpanel;
Painel3: tpanel;
Painel4: tpanel;
Painel5: tpanel;
Painel6: tpanel;
Painel7: tpanel;
Painel8: tpanel;
Painel11: tpanel;
Painel22: tpanel;
Painel33: tpanel;
Painel44: tpanel;
Painel55: tpanel;
Painel66: tpanel;
Painel77: tpanel;
Painel88: tpanel;
Button1: tbutton;
Procedimento Edit1MouSEMove (remetente: TOBJECT; SHIFT: TSHIFTSTATE; X,
Y: número inteiro);
Procedimento Edit1MouseDown (remetente: Tobject; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
Procedimento Edit1MouseUp (remetente: Tobject; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
procedimento formmousedown (remetente: tabject; botão: tmouseButton;
Turno: tshiftState; X, y: número inteiro);
Procedimento Button1MouseDown (remetente: Tobject; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
Procedimento Button1MouSEMove (remetente: Tobject; Shift: TSHIFTSTATE; X,
Y: número inteiro);
Procedimento Button1MouseUp (remetente: Tobject; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
privado
{Declarações privadas}
público
{Declarações públicas}
fim;
var
Form1: TForm1;
S, A: booleano;
implementação
{$ R *.dfm}
Procedimento manipulateControl (Controle: TControl; Shift: TSHIFTSTATE; X, Y, Precisão: Inteiro);
var sc_manipulate: word;
começar
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最左侧 ******************************************* *******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
if (x <= precisão) e (y> precisão) e (y <controle.Height-Precision)
então comece
Sc_manipulate: = $ f001;
Control.Cursor: = CRSIZEWE;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最右侧 ******************************************* *******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caso contrário, if (x> = control.width-precisão) e (y> precisão) e (y <controle.height-precisão)
então comece
Sc_manipulate: = $ f002;
Control.Cursor: = CRSIZEWE;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最上侧 ******************************************** ******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caso contrário, se (x> precisão) e (x <controle.width-precisão) e (y <= precisão)
então comece
Sc_manipulate: = $ f003;
Control.Cursor: = CRSIZENS;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的左上角 ******************************************** ******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
senão se (x <= precisão) e (y <= precisão)
então comece
Sc_manipulate: = $ f004;
Control.Cursor: = Crsizenwse;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的右上角 ******************************************** ******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caso contrário, if (x> = control.width-precisão) e (y <= precisão)
então comece
Sc_manipulate: = $ f005;
Control.Cursor: = Crsizenesw;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最下侧 ******************************************* *******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caso contrário, se (x> precisão) e (x <Control.Width-Precision) e (y> = Control.Height-Precision)
então comece
Sc_manipulate: = $ f006;
Control.Cursor: = CRSIZENS;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的左下角 ******************************************** ******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caso contrário, se (x <= precisão) e (y> = control.height-precisão)
então comece
Sc_manipulate: = $ f007;
Control.Cursor: = Crsizenesw;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的右下角 ******************************************** ******************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caso contrário, if (x> = control.width-precision) e (y> = control.height-precisão)
então comece
Sc_manipulate: = $ f008;
Control.Cursor: = Crsizenwse;
fim
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的客户区 (移动整个控件) *************************************** *****
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
caso contrário, se (x> 5) e (y> 5) e (x <controle.width-5) e (y <controle.Height-5)
então comece
Sc_manipulate: = $ f009;
Control.cursor: = Crsizeall;
fim
mais começam
Sc_manipulate: = $ f000;
Control.cursor: = CRDefault;
fim;
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Se Shift = [ssleft] então
começar
Libera -se;
Control.Perform (wm_sysCommand, sc_manipulate, 0);
fim;
fim;
Procedimento TForm1.edit1MouSEMove (remetente: TOBJECT; SHIFT: TSHIFTSTATE; X,
Y: número inteiro);
começar
Manipulatecontrol ((remetente como tControl), turno, x, y, 9);
edit1.hint: = 'edit1: tedit'+chr (13)+'origem:'+inttostr (edit1.top)+','
+Inttostr (edit1.left)+';'+'tamanho:'+inttostr (edit1.width)+inttostr (edit1.Height)+chr (13)+'parada de guia: ture; ordem: 0';
se s = true então
começar
a: = false;
painel1.Visible: = true; painel2.Visible: = true; painel3.Visible: = true;
painel4.Visible: = true; painel5.Visible: = true;
painel6.Visible: = true; painel7.Visible: = true; painel8.Visible: = true;
painel1.top:=edit1.top-6;
painel1.left: = edit1.left-6;
painel2.top:=edit1.top+(edit1.Height div 2) -3;
painel2.Left: = edit1.left-6;
painel3.top:=edit1.top+edit1.Height;
painel3.left: = edit1.left-6;
painel4.top:=edit1.top-6;
painel4.left: = edit1.left+(edit1.width div 2);
painel5.top:=edit1.top+edit1.Height;
painel5.left: = edit1.left+(edit1.width div 2);
painel6.top:=edit1.top-6;
painel6.left: = edit1.left+edit1.width;
painel7.top:=edit1.top+(edit1.Height div 2) -3;
painel7.left: = edit1.left+edit1.width;
painel8.top:=edit1.top+edit1.Height;
painel8.left: = edit1.left+edit1.width;
fim;
fim;
Procedimento TForm1.Edit1MouDown (remetente: TOBJECT; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
começar
painel11.Visible: = false; painel22.Visible: = false; painel33.Visible: = false;
painel44.Visible: = false; painel55.Visible: = false;
painel66.Visible: = false; painel77.Visible: = false; painel88.Visible: = false;
s: = true;
a: = false;
painel1.Visible: = true; painel2.Visible: = true; painel3.Visible: = true;
painel4.Visible: = true; painel5.Visible: = true;
painel6.Visible: = true; painel7.Visible: = true; painel8.Visible: = true;
painel1.top:=edit1.top-6;
painel1.left: = edit1.left-6;
painel2.top:=edit1.top+(edit1.Height div 2) -3;
painel2.Left: = edit1.left-6;
painel3.top:=edit1.top+edit1.Height;
painel3.left: = edit1.left-6;
painel4.top:=edit1.top-6;
painel4.left: = edit1.left+(edit1.width div 2);
painel5.top:=edit1.top+edit1.Height;
painel5.left: = edit1.left+(edit1.width div 2);
painel6.top:=edit1.top-6;
painel6.left: = edit1.left+edit1.width;
painel7.top:=edit1.top+(edit1.Height div 2) -3;
painel7.left: = edit1.left+edit1.width;
painel8.top:=edit1.top+edit1.Height;
painel8.left: = edit1.left+edit1.width;
fim;
Procedimento TForm1.Edit1MouseUp (remetente: TOBJECT; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
começar
se s = true então
começar
a: = false;
s: = false;
painel1.Visible: = true; painel2.Visible: = true; painel3.Visible: = true;
painel4.Visible: = true; painel5.Visible: = true;
painel6.Visible: = true; painel7.Visible: = true; painel8.Visible: = true;
painel1.top:=edit1.top-6;
painel1.left: = edit1.left-6;
painel2.top:=edit1.top+(edit1.Height div 2) -3;
painel2.Left: = edit1.left-6;
painel3.top:=edit1.top+edit1.Height;
painel3.left: = edit1.left-6;
painel4.top:=edit1.top-6;
painel4.left: = edit1.left+(edit1.width div 2);
painel5.top:=edit1.top+edit1.Height;
painel5.left: = edit1.left+(edit1.width div 2);
painel6.top:=edit1.top-6;
painel6.left: = edit1.left+edit1.width;
painel7.top:=edit1.top+(edit1.Height div 2) -3;
painel7.left: = edit1.left+edit1.width;
painel8.top:=edit1.top+edit1.Height;
painel8.left: = edit1.left+edit1.width;
fim;
fim;
Procedimento TForm1.FormMouseDown (remetente: TOBJECT; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
começar
a: = false;
s: = false;
painel1.Visible: = false; painel2.Visible: = false; painel3.Visible: = false;
painel4.Visible: = false; painel5.Visible: = false;
painel6.Visible: = false; painel7.Visible: = false; painel8.Visible: = false;
// **********
painel11.Visible: = false; painel22.Visible: = false; painel33.Visible: = false;
painel44.Visible: = false; painel55.Visible: = false;
painel66.Visible: = false; painel77.Visible: = false; painel88.Visible: = false;
fim;
Procedimento TForm1.Button1MouseUp (remetente: Tobject; Button: TmouseButton; Shift: TSHIFTSTATE; X, Y: INTEGER);
Comece se A = verdadeiro então
começar
a: = false;
s: = false;
painel1.Visible: = false; painel2.Visible: = false; painel3.Visible: = false;
painel4.Visible: = false; painel5.Visible: = false;
painel6.Visible: = false; painel7.Visible: = false; painel8.Visible: = false;
painel11.Visible: = true;
Painel22.Visible: = true;
painel33.Visible: = true;
painel44.Visible: = true;
painel55.Visible: = true;
painel66.Visible: = true;
painel77.Visible: = true;
painel88.Visible: = true;
Painel11.top:=Button1.top-6;
painel11.left: = button1.left-6;
painel22.top:=Button1.top+(Button1.Height Div 2) -3;
painel22.left: = button1.left-6;
Painel33.top:=Button1.top+Button1.Height;
painel33.left: = button1.left-6;
Painel44.top:=Button1.top-6;
painel44.Left: = Button1.Left+(Button1.Width Div 2);
painel55.top:=Button1.top+Button1.Height;
painel55.Left: = Button1.Left+(Button1.Width Div 2);
painel66.top:=Button1.top-6;
painel66.left: = button1.left+button1.width;
painel77.top:=Button1.top+(Button1.Height Div 2) -3;
painel77.left: = button1.left+button1.width;
painel88.top:=Button1.top+Button1.Height;
painel88.left: = button1.left+button1.width;
fim;
fim;
Procedimento TForm1.Button1MouseDown (remetente: TOBJECT; Button: TmouseButton;
Turno: tshiftState; X, y: número inteiro);
começar
a: = true;
s: = false;
painel1.Visible: = false; painel2.Visible: = false; painel3.Visible: = false;
painel4.Visible: = false; painel5.Visible: = false;
painel6.Visible: = false; painel7.Visible: = false; painel8.Visible: = false;
painel11.Visible: = true; Painel22.Visible: = true; painel33.Visible: = true;
painel44.Visible: = true; painel55.Visible: = true;
painel66.Visible: = true; painel77.Visible: = true; painel88.Visible: = true;
Painel11.top:=Button1.top-6;
painel11.left: = button1.left-6;
painel22.top:=Button1.top+(Button1.Height Div 2) -3;
painel22.left: = button1.left-6;
Painel33.top:=Button1.top+Button1.Height;
painel33.left: = button1.left-6;
Painel44.top:=Button1.top-6;
painel44.Left: = Button1.Left+(Button1.Width Div 2);
painel55.top:=Button1.top+Button1.Height;
painel55.Left: = Button1.Left+(Button1.Width Div 2);
painel66.top:=Button1.top-6;
painel66.left: = button1.left+button1.width;
painel77.top:=Button1.top+(Button1.Height Div 2) -3;
painel77.left: = button1.left+button1.width;
painel88.top:=Button1.top+Button1.Height;
painel88.left: = button1.left+button1.width;
fim;
Procedimento TForm1.Button1MouSEMove (remetente: TOBJECT; SHIFT: TSHIFTSTATE; X,
Y: número inteiro);
começar
Manipulatecontrol ((remetente como tControl), turno, x, y, 9);
edit1.hint: = 'Button1: tbutton'+chr (13)+'origem:'+inttostr (button1.top)+','
+Inttostr (botão1.left)+';'+'tamanho:'+inttostr (button1.width)+inttostr (button1.height)+chr (13)+'guia parada: ture; ordem: 0';
se a = true então
começar
s: = false;
painel1.Visible: = false; painel2.Visible: = false; painel3.Visible: = false;
painel4.Visible: = false; painel5.Visible: = false;
painel6.Visible: = false; painel7.Visible: = false; painel8.Visible: = false;
painel11.Visible: = true; Painel22.Visible: = true; painel33.Visible: = true;
painel44.Visible: = true; painel55.Visible: = true;
painel66.Visible: = true; painel77.Visible: = true; painel88.Visible: = true;
Painel11.top:=Button1.top-6;
painel11.left: = button1.left-6;
painel22.top:=Button1.top+(Button1.Height Div 2) -3;
painel22.left: = button1.left-6;
Painel33.top:=Button1.top+Button1.Height;
painel33.left: = button1.left-6;
Painel44.top:=Button1.top-6;
painel44.Left: = Button1.Left+(Button1.Width Div 2);
painel55.top:=Button1.top+Button1.Height;
painel55.Left: = Button1.Left+(Button1.Width Div 2);
painel66.top:=Button1.top-6;
painel66.left: = button1.left+button1.width;
painel77.top:=Button1.top+(Button1.Height Div 2) -3;
painel77.left: = button1.left+button1.width;
painel88.top:=Button1.top+Button1.Height;
painel88.left: = button1.left+button1.width;
fim;
fim;
fim.