Seite 1 von 1

Wie kann ich einen Text entfernen und neu setzen?

Verfasst: 30.09.2005 13:57
von Dr.Pixel
Hallo.
Ich habe ein Programm mit Textfeldern, die man über die WinAPI
nicht finden und ansprechen kann.
Daher bewege ich die Maus mit SetcursorPos_ an die Position des Text-Gadgets. Dann führe ich mit

Code: Alles auswählen

#MOUSEEVENTF_LEFTDOWN = $2 
#MOUSEEVENTF_LEFTUP = $4

Procedure MouseEvent(Ereignis.l) 
  Mem.l=GlobalAlloc_(0,8) 
  GetCursorPos_(Mem) 
  mouse_event_(Ereignis|#MOUSEEVENTF_ABSOLUTE,PeekL(Mem)*($FFFF/GetSystemMetrics_(0)),PeekL(Mem+4)*($FFFF/GetSystemMetrics_(1)),0,GetMessageExtraInfo_()) 
  GlobalFree_(Mem) 
EndProcedure 

SetCursorPos_(100,100)
MouseEvent(#MOUSEEVENTF_LEFTDOWN) 
MouseEvent(#MOUSEEVENTF_LEFTUP) 
...einen doppelklick aus. Textcursor ist jetzt in diesem Textfeld aktiviert.
Nun möchte ich die Taste [Entf] bzw. deren Funktion ausführen lassen. (Möchte den Inhalt des Textfeldes löschen)
Blos wie kann ich dies bewerkstelligen?

Andere Möglichkeit: Wenn ich mit dem oben beschriebenen Code
den Textcursor in das Textfeld gesetzt habe, wird durch das Programm
ein neues handle erstellt. Damit könnte ich jetzt endlich das Textfeld
ansprechen!
Blos wie kann ich nun den Text aus diesem Textfeld auslesen bzw. ändern?
Hat jemand ein Codebeispiel in PB oder WinAPI ?

Danke.
Dr. Pixel

Verfasst: 30.09.2005 14:28
von ts-soft
Wenn ich mir so Deine ganzen Fragen ansehe, denke ich, Du könntest Dir ne menge Arbeit durch meine AutoItX3 Lib ersparen, die Du auf PureArea.net findest.

Verfasst: 30.09.2005 15:17
von Dr.Pixel
OK, werde ich einmal testen.

Gibt es auch eine Anleitung, wie ich diese DLL einbinde und deren Befehle nutze?

Verfasst: 30.09.2005 15:34
von ts-soft
Die DLL ist in der Lib includiert, das heißt die PBOSL Libraries sollten auch installiert sein. Eine Hilfe in deutsch liegt dem Paket bei. Die Sourcen einschl. Hilfe sind auch dabei. Per Compilerdirektive läßt sich das Paket auch so Compilieren, das die DLL benötigt wird. Hierzu benötigste aber Tailbite.

Einfaches Example ist auch beigefügt. Ich hoffe das die Lib Einsteigergerecht gemacht wurde.

Sehr Empfehlenswert wäre es, wenn Du Dir zusätzlich AutoIt3 installierst, dann kannst Du die dort enthaltenen Tools (sowas ähnliches wie WinSpy ist dabei) auch nutzen.

Ich denke, Du wirst schon klarkommen, ansonsten einfach Fragen :allright:

//Nachtrag: Ich meine die Lib im ShowCase, da gibts nämlich noch eine, die ist nicht von mir und enthält auch keine dt. Hilfe