(7) Kriech das Formular aus Form oder Steuerung
Erstellen Sie ein neues Form2 und speichern Sie es als Capture2.pas. Setzen Sie die vier Eigenschaften der Attribut -Bordericons auf false.
BorderSyle ist auf bsnone eingestellt, FormStyle ist auf fSstayontop eingestellt.
Zwei gemeinsame Variablen: FRECT: TRECT, FBMP: tbitmap;
Einheit capture2;
Schnittstelle
Verwendung
Fenster, Nachrichten, Systeme, Varianten, Klassen, Grafiken, Steuerelemente, Formulare,
Dialoge;
Typ
Tform2 = Klasse (tform)
Prozedur Formcreate (Absender: Tobject);
Prozedur formActivate (Absender: Tobject);
VerfahrensformularDestroy (Absender: Tobject);
Verfahrensformung (Absender: Tobject);
Prozedur FormMouseUp (Absender: Tobject; Taste: TMouseButton;
Verschiebung: TShiftState; x, y: Ganzzahl);
Privat
{Private Deklarationen}
öffentlich
FRECT: TRECT;
FBMP: tbitmap;
Ende;
var
Form2: tform2;
Durchführung
{$ R *.dfm}
// Erstellen Sie einen neuen benutzerdefinierten Cursor Cursor_1 und platzieren Sie ihn in Capture2.res -Ressource
// In der Datei gibt es einen weißen rechteckigen Rand von 32*32, um den Bereich der Erfassung anzuzeigen.
Prozedur tForm2.FormCreate (Absender: Tobject);
var adc: hdc;
const crhand = -18;
Beginnen
Screen.cursors [crhand]: = loadCursor (Hinstance, 'cursor_1');
Cursor: = Crhand;
FBMP: = tbitmap.create;
fbmp.width: = screen.width;
fbmp.height: = screen.height;
ADC: = getdc (0);
Bitblt (fbmp.canvas.handle, 0,0, screen.width, screen.height, adc, 0,0, srccopy);
RelectC (0, ADC);
Setbounds (0,0, screen.width, screen.height);
Ende;
procedure tform2.FormActivate (Absender: tobject);
const crhand = -18;
Beginnen
Screen.cursors [crhand]: = loadCursor (Hinstance, pchar ('cursor_1'));
Cursor: = Crhand;
Ende;
Prozedur tForm2.FormDestroy (Absender: Tobject);
Beginnen
fbmp.free;
Screen.cursor: = crdefault;
Ende;
procedure tform2.formPaint (Absender: tobject);
Beginnen
Canvas.draw (0,0, fbmp);
Ende;
Prozedur TForm2.FormMouseUp (Absender: Tobject; Taste: tmouseButton;
Verschiebung: TShiftState; x, y: Ganzzahl);
Beginnen
ModalResult: = MROK;
Ende;
Ende.