so also ich habe mir grad was programmiert wo man eine karte hat und dort punkte einzeichnen kann!
Delphi-Quellcode:
procedure TForm4.Image1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
var YString,XString:string;
begin
Canvas.Pen.Color:=clRed;
Canvas.Pen.Width:=3;
Canvas.Ellipse(Image1.Left+X-5,Image1.Top+Y-5,Image1.Left+X+5,Image1.Top+Y+5);
ini:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'laninfo.ini');
if Length(IntToStr(Y))<=2 then YString:='0'+IntToStr(Y) else YString:=IntToStr(Y);
if Length(IntToStr(X))<=2 then XString:='0'+IntToStr(X) else YString:=IntToStr(X);
ini.WriteString('WLAN-Points','Image1',XString+','+YString);
ini.Free;
end;
das funktioniert einwandfrei ! [WLAN-Points]
Bsp:
[WLAN-Points]
Image1=085,101
Falls noch kleine Fehler drin sind ist das erstmal egal weil es geht um etwas wichtigeres
Ich habe die Punkte ja jetzt in eine ini-Datei gespeichert... Nun möchte ich sie auch wieder laden ! Aber mit welchem Ereignis? Den reinen Anweisungsteil habe ich fertig aber es funktioniert nicht mit OnPaint und bei den Images finde ich keine geeignetes Ereignis! Das Image überdeckt immer wieder mein Canvas ... hoffe mir kann jemand helfen
Delphi-Quellcode:
var angaben,angaben2:string;
var X,Y:integer;
begin
Canvas.Pen.Color:=clRed;
Canvas.Pen.Width:=3;
ini:=TIniFile.Create(ExtractFilePath(Application.ExeName)+'laninfo.ini');
angaben:=ini.ReadString('WLAN-Points','Image1','0');
angaben2:=angaben;
X:=StrToInt(Copy(angaben,1,3));
Y:=StrToInt(Copy(angaben2,5,3));
Canvas.Ellipse(Image1.Left+X-5,Image1.Top+Y-5,Image1.Left+X+5,Image1.Top+Y+5);
ini.Free;