Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Edit zu TCaption (https://www.delphipraxis.net/23157-edit-zu-tcaption.html)

Schilkschi 29. Mai 2004 20:11


Edit zu TCaption
 
Habe hier schon gesucht aber nichts gefunden...

SetCursorPos(Edit1.text));

Also ganz simpel denk ich mir mal aber wie wandle ich den String zu TCaption?

String wäre "111, 111"
Hab irgendwas mit Shellexecute gefunden ...

Ich bin noch nicht allzu gut, deshalb so eine Frage.
Also bitte Verständniss haben und langsam erklären ;)

citybreaker 29. Mai 2004 20:17

Re: Edit zu TCaption
 
IntToStr = Integer in einen String umwandeln
StrToInt = String in einen Integer Wert umwandeln

Beispiel:
Delphi-Quellcode:
var i: integer;
begin
  i := 40;
  Label1.Caption := IntToStr(i);
end;
Oder bei SetCursorPos

Delphi-Quellcode:
SetCursorPos(StrToInt(Edit1.text));

Schilkschi 29. Mai 2004 20:22

Re: Edit zu TCaption
 
Na so dumm bin ich auch wieder nicht ;)

Also eine TCaption ist sowas: "KoordinateX, KoordinateY"
also kein Integer, sagt mir dann er könne die beiden nicht zusammenfügen, was ich verstehen kann denn da isssn Komma zwischen, also ein TCaption und kein Int.

alanblack 29. Mai 2004 20:26

Re: Edit zu TCaption
 
hI;

Vielleicht könnte uns ein stücksen code weiterhelfen!

mfg alan

Schilkschi 29. Mai 2004 20:31

Re: Edit zu TCaption
 
Delphi-Quellcode:
procedure TForm1.Button11Click(Sender: TObject);
var z :TPoint;
begin
SetCursorPos(1,1);        //Maus setzen
GetCursorPos(z);          //Posi holen
mouse_event(MOUSEEVENTF_LEFTDOWN,z.x,z.y,0,0); //klicken
mouse_event(MOUSEEVENTF_LEFTUP,z.x,z.y,0,0);
// in Edit trägt User seine Koordinaten ein die er vorher lesen kann
das wars mehr ist nicht nötig für das was ich möchte ...


Leute kommt schon ich weiss sons nicht an wen ich mich wenden soll! Meine Informatik Lehrer habe ich schon seit der 5. mit meinen Fragen überfordert ^^

Also ich habe ein Edit
SetCursorPos(TEXT VON EDIT); <-- der soll da rein aber das issn String da muss aber TPoint oder TCaption rein

Wie kann ich also Edit1.text in Tpoint umwandeln? Der Text von Edit1 sieht so aus wie der von TPoint:
a.x, a.y
111, 111

SetCursorPos(1,1); mache ich das?
Gibt es nicht sowas wie strtoTPoint ???

Schilkschi 29. Mai 2004 20:54

Re: Edit zu TCaption
 
SRY Doppelpost

Pseudemys Nelsoni 29. Mai 2004 21:03

Re: Edit zu TCaption
 
keine doppelposts vor 24std, siehe DP rules.

alcaeus 29. Mai 2004 21:09

Re: Edit zu TCaption
 
Also, wenn der Beistrich und das Leerzeichen dazwischen sind, dann geht es doch ganz leicht, die TPoint-Variable zu füllen.
Delphi-Quellcode:
var
  MeinString: String;
  P: TPoint;
begin
  MeinString := Edit1.Text;
  P.x := StrToInt(Copy(MeinString,1,Pos(',',MeinString)-1));
  Delete(MeinString,1,Pos(',',MeinString)+1);
  P.y := StrToInt(MeinString);
end;
Der Code müsste so funktionieren.

Greetz
alcaeus

Schilkschi 29. Mai 2004 21:17

Re: Edit zu TCaption
 
Delphi-Quellcode:
var
  MeinString: String;
  P: TPoint;
begin
  MeinString := Edit1.Text;
  P.x := StrToInt(Copy(MeinString,1,Pos(',',MeinString)));
  Delete(MeinString,1,Pos(',',MeinString)+1);
  P.y := StrToInt(MeinString);

GetCursorPos(p);
mouse_event(MOUSEEVENTF_LEFTDOWN,p.x,p.y,0,0); //klicken
mouse_event(MOUSEEVENTF_LEFTUP,p.x,p.y,0,0);
// in Edit trägt User seine Koordinaten ein die er vorher lesen kann
So also? Klappt aber nicht kommt ne Meldung:
EConvertError with MEssage "572 <--- Koord, is not a valid Integer. Process stoped bla bla

alcaeus 29. Mai 2004 21:22

Re: Edit zu TCaption
 
Na sag mal was in dem Edit1 was für ein Text drinnenstand?
Außerdem habe ich durch Zufall bei einer Zeile etwas wichtiges vergessen:
Delphi-Quellcode:
P.x := StrToInt(Copy(MeinString,1,Pos(',',MeinString)));
wird zu
Delphi-Quellcode:
P.x := StrToInt(Copy(MeinString,1,Pos(',',MeinString)-1));
Vielleicht behebt das das Problem, aber die Daten müssen so im Edit drinnenstehen:
#, #
Wobei # für eine beliebig lange Zahl steht.

Schilkschi 29. Mai 2004 21:27

Re: Edit zu TCaption
 
So

'Zahl zwischen 0 und 9999, Zahl zwischen 0 und 9999'

Also

1, 1
oder
1111, 34
oder
12, 999

Das steht da drin wichtig ist das Leerzeichen!
------------

Es klickt juhuuu!!!
Wenn du mir jetzt noch alles genau erklären könntest was das im Einzelnen heisst?
Nämlich ich hasse nichts mehr als bei einem Problem nichts dazu zu lernen....

Ich denke mal du gehts den String durch bis zum Komma trennst ab sagst das ist
P.x
oder?

alcaeus 29. Mai 2004 21:31

Re: Edit zu TCaption
 
Naja, auf meiner Maschine hat es mit dem Code funktioniert, aber ich teste es gern nochmal durch....nein, bei mir funktionierts, vielleicht hast du was falsch gemacht. Hast du das -1 auch übernommen?

Schilkschi 29. Mai 2004 21:34

Re: Edit zu TCaption
 
Ich hab was geadded schau mal und sag mir Bescheid plz!

THX!!

alcaeus 29. Mai 2004 21:45

Re: Edit zu TCaption
 
Also, klar machen wir das:
Delphi-Quellcode:
var
  MeinString: String;
  P: TPoint;
Diese Variablen benötigen wir, um einerseits den Wert des Edits zwischenzuspeichern (so dass er im Edit nicht verändert wird) und um den Punkt zu speichern.

Delphi-Quellcode:
begin
  MeinString := Edit1.Text;
Wir "kopieren" mal den Text aus dem Edit raus

Delphi-Quellcode:
  P.x := StrToInt(Copy(MeinString,1,Pos(',',MeinString)-1));
Hier kopieren wir mit Copy zunächst einen Teil des Strings heraus, und zwar beginnend beim ersten Zeichen, und wir gehen bis eine Stelle vor dem Komma, dessen Index wir mit Pos finden. Das ganze wandeln wir in einen Integer um.

Delphi-Quellcode:
  Delete(MeinString,1,Pos(',',MeinString)+1);
  P.y := StrToInt(MeinString);
end;
Hier löschen wir zuerst alles bis einschließlich der ersten Stelle nach dem Komma, und wandeln das Ganze wiederum in einen Integer um.
Soviel zu meinem Code, ich fühle mich leider z. Zt. nicht danach, anderen Code auch noch durchzugehen.

Schilkschi 29. Mai 2004 21:49

Re: Edit zu TCaption
 
Was fürn andren Code?
Reicht doch!

THX nochmal :cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:40 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz