Einheit Einheit1;
Schnittstelle
Verwendung
Fenster, Nachrichten, Systeme, Varianten, Klassen, Grafiken, Steuerelemente, Formulare,
Dialoge, extctrls, stdctrls, jpeg;
const lmouseDown = false;
Typ
Tform1 = Klasse (tform)
Edit1: tedit;
Panel2: tpanel;
Panel1: tpanel;
Panel3: tpanel;
Panel4: tpanel;
Panel5: tpanel;
Panel6: tpanel;
Panel7: tpanel;
Panel8: tpanel;
Panel11: tpanel;
Panel22: tpanel;
Panel33: tpanel;
Panel44: tpanel;
Panel55: tpanel;
Panel66: tpanel;
Panel77: tpanel;
Panel88: tpanel;
Button1: Tbutton;
Prozedur edit1Mousemove (Absender: Tobject; Shift: TShiftState; x,
Y: Ganzzahl);
Prozedur edit1MouseDown (Absender: Tobject; Taste: TMouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
Prozedur edit1MouseUp (Absender: Tobject; Schaltfläche: TMouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
Verfahrensformmousedown (Absender: Tobject; Taste: TMouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
PROCEDURE TAPT1MOUSEDown (Absender: Tobject; Taste: TMouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
Prozedur -Taste1Mousemove (Absender: Tobject; Shift: TShiftState; x,
Y: Ganzzahl);
PROCEDURE Taste1MouseUp (Absender: Tobject; Taste: TMouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
Privat
{Private Deklarationen}
öffentlich
{Öffentliche Erklärungen}
Ende;
var
Form1: tform1;
S, A: Boolean;
Durchführung
{$ R *.dfm}
Verfahren ManipulateControl (Kontrolle: tcontrol; Verschiebung: tShiftstate; x, y, Präzision: Ganzzahl);
var Sc_Manipulat: Wort;
beginnen
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最左侧 ************************************************ *****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
if (x <= precision) und (y> precision) und (y <control.height-Precision)
Dann fangen Sie an
SC_MANIPULE: = $ f001;
Control.cursor: = crSizewe;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最右侧 ************************************************ *****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
sonst if (x> = control.width-precision) und (y> precision) und (y <control.height-Precision)
Dann fangen Sie an
SC_MANIPULE: = $ f002;
Control.cursor: = crSizewe;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最上侧************************************* ****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
else wenn (x> precision) und (x <control.width-precision) und (y <= precision)
Dann fangen Sie an
SC_MANIPULE: = $ f003;
Control.cursor: = crsizens;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的左上角************************************* ****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
sonst wenn (x <= precision) und (y <= precision)
Dann fangen Sie an
SC_MANIPULE: = $ f004;
Control.cursor: = crSizenwse;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的右上角************************************* ****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
else if (x> = control.width-precision) und (y <= precision)
Dann fangen Sie an
SC_MANIPULE: = $ f005;
Control.cursor: = crSizenesw;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的最下侧 ************************************************ *****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
sonst wenn (x> precision) und (x <control.width-precision) und (y> = control.height-Precision)
Dann fangen Sie an
SC_MANIPULE: = $ f006;
Control.cursor: = crsizens;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的左下角************************************* ****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
else wenn (x <= precision) und (y> = control.height-Precision)
Dann fangen Sie an
SC_MANIPULE: = $ f007;
Control.cursor: = crSizenesw;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的右下角************************************* ****************
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
else if (x> = control.width-Präzision) und (y> = control.height-Precision)
Dann fangen Sie an
SC_MANIPULE: = $ f008;
Control.cursor: = crSizenwse;
Ende
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
// 光标在控件的客户区(移动整个控件) ************************************************ *****
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
sonst wenn (x> 5) und (y> 5) und (x <control.width-5) und (y <control.height-5)
Dann fangen Sie an
SC_MANIPULE: = $ f009;
Control.cursor: = crSizeAll;
Ende
sonst beginnen
SC_MANIPULE: = $ f000;
Control.cursor: = crdefault;
Ende;
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~
Wenn revers = [ssleft] dann
beginnen
Releasecapture;
Control.Perform (WM_SYSCOMMAND, SC_MANIPULE, 0);
Ende;
Ende;
Verfahren tform1.Edit1MousEmove (Absender: Tobject; Shift: TShiftstate; x,
Y: Ganzzahl);
beginnen
ManipulateControl ((Absender als Tontrol), Verschiebung, x, y, 9);
edit1.HINT: = 'Edit1: Tedit'+Chr (13)+'Ursprung:'+inttoStr (edit1.top)+',', ',', ',', ',', ',', ',', '
+InttoStr (edit1.left)+';'+'Größe:'+inttoStr (edit1.width)+inttoStr (edit1.Height)+chr (13)+'tab stop: ture; order: 0';
Wenn s = wahr ist
beginnen
A: = falsch;
Panel1.vissible: = True; panel2.vissible: = true; panel3.vissible: = true;
Panel4.Visible: = true; Panel5.vissible: = true;
Panel6.vissible: = True; Panel7.vissible: = True; Panel8.vissible: = True;
panel1.top:=edit1.top-6;
Panel1.Left: = edit1.left-6;
panel2.top:=edit1.top+(Edit1.Height Div 2) -3;
panel2.left: = edit1.left-6;
panel3.top:=edit1.top+Edit1.Height;
panel3.left: = edit1.left-6;
panel4.top:=edit1.top-6;
panel4.left: = edit1.left+(edit1.width div 2);
panel5.top:=edit1.top+Edit1.Height;
panel5.left: = edit1.left+(edit1.width div 2);
panel6.top:=edit1.top-6;
panel6.left: = edit1.left+edit1.width;
panel7.top:=edit1.top+(Edit1.Height Div 2) -3;
panel7.left: = edit1.left+edit1.width;
panel8.top:=edit1.top+Edit1.Height;
panel8.left: = edit1.left+edit1.width;
Ende;
Ende;
Prozedur TForm1.Edit1MouseDown (Absender: Tobject; Taste: tmouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
beginnen
Panel11.vissible: = false; Panel22.vissible: = false; Panel33.vissible: = false;
panel44.vissible: = false; Panel55.vissible: = false;
Panel66.vissible: = false; Panel77.vissible: = false; Panel88.vissible: = false;
S: = wahr;
A: = falsch;
Panel1.vissible: = True; panel2.vissible: = true; panel3.vissible: = true;
Panel4.Visible: = true; Panel5.vissible: = true;
Panel6.vissible: = True; Panel7.vissible: = True; Panel8.vissible: = True;
panel1.top:=edit1.top-6;
Panel1.Left: = edit1.left-6;
panel2.top:=edit1.top+(Edit1.Height Div 2) -3;
panel2.left: = edit1.left-6;
panel3.top:=edit1.top+Edit1.Height;
panel3.left: = edit1.left-6;
panel4.top:=edit1.top-6;
panel4.left: = edit1.left+(edit1.width div 2);
panel5.top:=edit1.top+Edit1.Height;
panel5.left: = edit1.left+(edit1.width div 2);
panel6.top:=edit1.top-6;
panel6.left: = edit1.left+edit1.width;
panel7.top:=edit1.top+(Edit1.Height Div 2) -3;
panel7.left: = edit1.left+edit1.width;
panel8.top:=edit1.top+Edit1.Height;
panel8.left: = edit1.left+edit1.width;
Ende;
Prozedur TForm1.Edit1MouseUp (Absender: Tobject; Taste: tmouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
beginnen
Wenn s = wahr ist
beginnen
A: = falsch;
S: = falsch;
Panel1.vissible: = True; panel2.vissible: = true; panel3.vissible: = true;
Panel4.Visible: = true; Panel5.vissible: = true;
Panel6.vissible: = True; Panel7.vissible: = True; Panel8.vissible: = True;
panel1.top:=edit1.top-6;
Panel1.Left: = edit1.left-6;
panel2.top:=edit1.top+(Edit1.Height Div 2) -3;
panel2.left: = edit1.left-6;
panel3.top:=edit1.top+Edit1.Height;
panel3.left: = edit1.left-6;
panel4.top:=edit1.top-6;
panel4.left: = edit1.left+(edit1.width div 2);
panel5.top:=edit1.top+Edit1.Height;
panel5.left: = edit1.left+(edit1.width div 2);
panel6.top:=edit1.top-6;
panel6.left: = edit1.left+edit1.width;
panel7.top:=edit1.top+(Edit1.Height Div 2) -3;
panel7.left: = edit1.left+edit1.width;
panel8.top:=edit1.top+Edit1.Height;
panel8.left: = edit1.left+edit1.width;
Ende;
Ende;
Prozedur TForm1.FormmouseDown (Absender: Tobject; Taste: tmouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
beginnen
A: = falsch;
S: = falsch;
Panel1.vissible: = false; panel2.vissible: = false; Panel3.vissible: = false;
Panel4.Visible: = false; Panel5.vissible: = false;
Panel6.vissible: = false; Panel7.vissible: = false; Panel8.vissible: = false;
// **********
Panel11.vissible: = false; Panel22.vissible: = false; Panel33.vissible: = false;
panel44.vissible: = false; Panel55.vissible: = false;
Panel66.vissible: = false; Panel77.vissible: = false; Panel88.vissible: = false;
Ende;
procedure tform1.button1MouseUp (Absender: Tobject; Taste: tmouseButton; Shift: TShiftState; x, y: Integer);
Beginnen Sie, wenn a = wahr ist
beginnen
A: = falsch;
S: = falsch;
Panel1.vissible: = false; panel2.vissible: = false; Panel3.vissible: = false;
Panel4.Visible: = false; Panel5.vissible: = false;
Panel6.vissible: = false; Panel7.vissible: = false; Panel8.vissible: = false;
panel11.vissible: = true;
Panel22.vissible: = true;
Panel33.vissible: = true;
panel44.vissible: = true;
Panel55.vissible: = true;
Panel66.vissible: = True;
Panel77.vissible: = True;
Panel88.vissible: = True;
panel11.top:=button1.top-6;
panel11.left: = button1.left-6;
panel22.top:=button1.top+(Button1.Height Div 2) -3;
panel22.left: = button1.left-6;
panel33.top:=button1.top+Button1.Height;
panel33.left: = button1.left-6;
panel44.top:=button1.top-6;
panel44.left: = button1.left+(button1.width div 2);
panel55.top:=button1.top+Button1.Height;
Panel55.left: = button1.left+(button1.width div 2);
panel66.top:=button1.top-6;
panel66.left: = button1.left+button1.width;
panel77.top:=button1.top+(Button1.Height Div 2) -3;
panel77.left: = button1.left+button1.width;
panel88.top:=button1.top+Button1.Height;
panel88.left: = button1.left+button1.width;
Ende;
Ende;
Prozedur tform1.button1MouseDown (Absender: Tobject; Taste: tmouseButton;
Verschiebung: TShiftstate; X, y: Ganzzahl);
beginnen
A: = wahr;
S: = falsch;
Panel1.vissible: = false; panel2.vissible: = false; Panel3.vissible: = false;
Panel4.Visible: = false; Panel5.vissible: = false;
Panel6.vissible: = false; Panel7.vissible: = false; Panel8.vissible: = false;
panel11.vissible: = true; Panel22.vissible: = true; Panel33.vissible: = true;
panel44.vissible: = true; Panel55.vissible: = true;
Panel66.vissible: = True; Panel77.vissible: = True; Panel88.vissible: = True;
panel11.top:=button1.top-6;
panel11.left: = button1.left-6;
panel22.top:=button1.top+(Button1.Height Div 2) -3;
panel22.left: = button1.left-6;
panel33.top:=button1.top+Button1.Height;
panel33.left: = button1.left-6;
panel44.top:=button1.top-6;
panel44.left: = button1.left+(button1.width div 2);
panel55.top:=button1.top+Button1.Height;
Panel55.left: = button1.left+(button1.width div 2);
panel66.top:=button1.top-6;
panel66.left: = button1.left+button1.width;
panel77.top:=button1.top+(Button1.Height Div 2) -3;
panel77.left: = button1.left+button1.width;
panel88.top:=button1.top+Button1.Height;
panel88.left: = button1.left+button1.width;
Ende;
Prozedur tform1.button1Mousemove (Absender: Tobject; Shift: TShiftstate; x,
Y: Ganzzahl);
beginnen
ManipulateControl ((Absender als Tontrol), Verschiebung, x, y, 9);
edit1.HINT: = 'Button1: tbutton'+chr (13)+'Ursprung:'+inttoStr (button1.top)+',', ',', ',', ',', ',',
+InttoStr (button1.left)+';'+'Größe:'+inttoStr (button1.width)+inttoStr (button1.Height)+chr (13)+'Registerkarte Stopp: ture; order: 0';
Wenn a = wahr ist
beginnen
S: = falsch;
Panel1.vissible: = false; panel2.vissible: = false; Panel3.vissible: = false;
Panel4.Visible: = false; Panel5.vissible: = false;
Panel6.vissible: = false; Panel7.vissible: = false; Panel8.vissible: = false;
panel11.vissible: = true; Panel22.vissible: = true; Panel33.vissible: = true;
panel44.vissible: = true; Panel55.vissible: = true;
Panel66.vissible: = True; Panel77.vissible: = True; Panel88.vissible: = True;
panel11.top:=button1.top-6;
panel11.left: = button1.left-6;
panel22.top:=button1.top+(Button1.Height Div 2) -3;
panel22.left: = button1.left-6;
panel33.top:=button1.top+Button1.Height;
panel33.left: = button1.left-6;
panel44.top:=button1.top-6;
panel44.left: = button1.left+(button1.width div 2);
panel55.top:=button1.top+Button1.Height;
Panel55.left: = button1.left+(button1.width div 2);
panel66.top:=button1.top-6;
panel66.left: = button1.left+button1.width;
panel77.top:=button1.top+(Button1.Height Div 2) -3;
panel77.left: = button1.left+button1.width;
panel88.top:=button1.top+Button1.Height;
panel88.left: = button1.left+button1.width;
Ende;
Ende;
Ende.