AutoWin UserLibrary

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: AutoWin UserLibrary

Beitrag von ts-soft »

Abraham0607 hat geschrieben:Das einzige was mir noch fehlt ist so was wie "AW_GetMousePos()" oder so.
Dafür kannst Du doch einfach DesktopMouseX() und DesktopMouseY() nutzen :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Re: AutoWin UserLibrary

Beitrag von Falko »

oder meint er vielleicht so was wie:
GetCursorPos()
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: AutoWin UserLibrary

Beitrag von ts-soft »

Falko hat geschrieben:oder meint er vielleicht so was wie:
GetCursorPos()
Ist doch im Grunde dasselbe:

Code: Alles auswählen

Delay(1000)
Define cur.POINT
GetCursorPos_(@cur)
Debug cur\x
Debug cur\y
Debug DesktopMouseX()
Debug DesktopMouseY()
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Re: AutoWin UserLibrary

Beitrag von Falko »

sry, hast Recht, ist das Selbe wie der PB-Befehl. :allright:

Ich hatte an was anderes gedacht.
Die Cursorposition innerhalb eines Windows, z.B. mit FindWindow_(...)
gefundenen Windows und dort blinkenden Cursor.
Also Cursorposition nicht bezogen auf dem Desktop, sondern auf dieses Windows.
Nur bietet die API dazu keine spezielle Funktion, sondern man muss diese selbst errechnen.
Wozu man GetWindowRect_() usw. benötigt.


Gruß,
Falko
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
NicknameFJ
Beiträge: 324
Registriert: 03.06.2007 14:36
Wohnort: Von der Sonne aus gesehen der dritte Planet

Re: AutoWin UserLibrary

Beitrag von NicknameFJ »

Hallo Falko,

ist denn Clienttoscreen_()

was Du suchst?

http://msdn.microsoft.com/en-us/library ... 85%29.aspx

NicknameFJ
PS: Alle im Text enthaltenen Schreibfehler sind beabsichtigt und dienen der Belustigung aller

Bild
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Re: AutoWin UserLibrary

Beitrag von Falko »

Nicht ganz. Wenn ich den Code so ausführe, wird so die Position des
Fensters ermittelt, aber nicht des Cursors in diesem Windows.
Es sei denn, ich muss das anders schreiben.

Code: Alles auswählen

cur.Point
RunProgram("notepad.exe"); nur zum Test den internen Cursor entern und Mouse wo anders hinbewegen
Delay(4000)
hwnd=FindWindow_(0,"Unbenannt - Editor")
Debug ClientToScreen_(hwnd,@cur)
Debug cur\x
Debug cur\y
Gruß,
Falko
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: AutoWin UserLibrary

Beitrag von ts-soft »

Ihr sucht nicht den Cursor, sondern die Caretposition, also dort wo der Schreibcursor blinkt. Dazu muss das handle des
Textcontrols bekannt sein, sowie die Message um diese Position zu ermitteln, dies hängt wiederum vom Control
ab (RichText, Scintilla, RAEdit, HumpfelGrumpfel usw.)

Solch eine Funktion in zuverlässiger Version ist wohl eher nicht von mir zu erwarten :mrgreen:
zumal der Nutzen auch nicht so groß sein dürfte.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Falko
Admin
Beiträge: 3535
Registriert: 29.08.2004 11:27
Computerausstattung: PC: MSI-Z590-GC; 32GB-DDR4, ICore9; 2TB M2 + 2x3TB-SATA2 HDD; Intel ICore9 @ 3600MHZ (Win11 Pro. 64-Bit),
Acer Aspire E15 (Win11 Home X64). Purebasic LTS 6.11b1
HP255G8 Notebook @AMD Ryzen 5 5500U with Radeon Graphics 2.10 GHz 3.4GHz, 32GB_RAM, 3TB_SSD (Win11 Pro 64-Bit)
Kontaktdaten:

Re: AutoWin UserLibrary

Beitrag von Falko »

Schade.
Das wäre praktisch beim automatischen ausfüllen von Überweisungen oder
Formularen etc.

Sicher ist es nicht einfach, aber eine Funktion zum ermitteln oder schreiben
dieser Felder wäre doch praktisch, oder?

Passt doch hierzu:
ts-soft hat geschrieben:AutoWin ...dient dem automatisieren von Abläufen unter Windows...
:allright:

Vielleicht gibt es ja noch einfachere Möglichkeiten. Ich erinnere mich, das Danilo damals sowas
in der Art als Beispiel geschrieben hatte, finde es aber nicht wieder.

Gruß,
Falko
Bild
Win11 Pro 64-Bit, PB_6.11b1
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Re: AutoWin UserLibrary

Beitrag von ts-soft »

Formulare, deren Aufbau ich nicht kenne, kann ich schlecht ausfüllen, andere Formulare gibts es keine
Probleme und man benötigt nicht die Caretposition, sehe ich den Sinn nicht.
Webformulare kann man allerdings nicht ausfüllen, dafür ist die Lib nicht konzipiert und wird sie nie sein.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8808
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Re: AutoWin UserLibrary

Beitrag von NicTheQuick »

Mal so ins Blaue geraten:
Man könnte ja den Nutzer fragen, ob er mit der Maus auf das erste Formularfeld klickt und dann kann man einfach Eingabe simulieren. Und um zum nächsten Feld zu springen, wird einfach 'Tab' simuliert. Natürlich muss der Formularaufbau und die Tab-Reigenfolge dafür bekannt sein.
Antworten