Wer für sein Programm einen separaten Mauszeiger nutzen möchte, muss generell ein Image oder ein Icon laden, um es für die Form zu nutzen. Es gibt aber eine Möglichkeit, ohne eine Grafik zu laden und das Ganze als HEX zu definieren. Dazu muss die *.DFM Datei des Projektes manipuliert werden.
Der folgende Code zeigt wie..
*.DFM Datei, den ganzen Code komplett ersetzten:
object Form1: TForm1
Left = 1898
Top = 131
Width = 544
Height = 375
Caption = 'Form1'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object Image1: TImage
Left = 12
Top = 4
Width = 16
Height = 16
AutoSize = True
Picture.Data = {
07544269746D6170B6020000424DB602000000000000B6000000280000001000
0000100000000100100003000000000200000000000000000000100000000000
0000007C0000E00300001F000000000000000000800000800000008080008000
00008000800080800000C0C0C000808080000000FF0000FF000000FFFF00FF00
0000FF00FF00FFFF0000FFFFFF00000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000FF7FFF7FFF7FFF7F000000000000
FF7FFF7FFF7FFF7FFF7FFF7F00000000FF7FFF7FFF7FFF7F000000000000FF7F
FF7FFF7FFF7FFF7FFF7F00000000FF7FFF7FFF7FFF7FFF7F00000000FF7FFF7F
FF7FFF7FFF7FFF7FFF7F0000000000000000FF7FFF7FFF7F0000000000000000
FF7FFF7FFF7FFF7F000000000000000000000000FF7FFF7FFF7FFF7FFF7FFF7F
FF7FFF7FFF7FFF7F000000000000000000000000FF7FFF7FFF7FFF7FFF7FFF7F
FF7FFF7FFF7F0000000000000000000000000000FF7FFF7FFF7F00000000FF7F
FF7FFF7FFF7F00000000000000000000000000000000FF7FFF7FFF7FFF7FFF7F
FF7FFF7F000000000000000000000000000000000000FF7FFF7FFF7FFF7FFF7F
FF7FFF7F0000000000000000000000000000000000000000FF7FFF7FFF7FFF7F
FF7FFF7F0000000000000000000000000000000000000000FF7FFF7FFF7FFF7F
FF7F000000000000000000000000000000000000000000000000FF7FFF7FFF7F
FF7F000000000000000000000000000000000000000000000000FF7FFF7FFF7F
00000000000000000000000000000000000000000000000000000000FF7F0000
0000000000000000000000000000}
end
object Memo1: TMemo
Left = 12
Top = 36
Width = 149
Height = 149
Lines.Strings = (
'Memo1')
TabOrder = 0
OnMouseDown = Memo1MouseDown
end
object Edit1: TEdit
Left = 220
Top = 60
Width = 121
Height = 21
TabOrder = 1
Text = 'Edit1'
OnMouseDown = Edit1MouseDown
end
end
Unit1 :
procedure TForm1.Edit1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
CreateCaret(Edit1.Handle, 0, 10, 4);
ShowCaret(Edit1.Handle);
end;
procedure TForm1.Memo1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
CreateCaret(Memo1.Handle, Image1.Picture.Bitmap.Handle, 0, 0);
ShowCaret(Memo1.Handle);
end;
Keine Kommentare:
Kommentar veröffentlichen