Guten Abend,
es geht darum, in einem Spiel (GTA San Andreas) ingame per AutoIt eine Nachricht anzeigen zu lassen, lediglich einen kleinen String.
Ich hatte temporär den interessanten Gedanken, eine OnTop Popup-Gui zu erstellen und nach ner Zeit zu löschen. Sähe leider etwas sehr blöde aus.....
Diesbezüglich Frage eins: Wie kann man eine GUI transparent machen, so dass lediglich ein Label NICHT transparent ist ?
Dann hatte ich mal die Hilfedatei durchgeguckt, und kam zu diesem GDI_Plus Zeug.
Hatte dann diesen Code versucht
Spoiler anzeigen
#include <GuiConstantsEx.au3>
#include <GDIPlus.au3>
Opt('MustDeclareVars', 1)
HotKeySet("t","_Main")
while 1
sleep(500)
wend
Func _Main()
Local $hGUI, $hWnd, $hGraphic, $hBrush, $hFormat, $hFamily, $hFont, $tLayout
; $hGUI = GUICreate("GDI+", 400, 300)
$title = WInGetTitle("[activated]")
$hWnd = WinGetHandle($title)
GUISetState()
; Draw a string
_GDIPlus_Startup ()
$hGraphic = _GDIPlus_GraphicsCreateFromHWND ($hWnd)
$hBrush = _GDIPlus_BrushCreateSolid (0x7F00007F)
$hFormat = _GDIPlus_StringFormatCreate ()
$hFamily = _GDIPlus_FontFamilyCreate ("Arial")
$hFont = _GDIPlus_FontCreate ($hFamily, 12, 2)
$tLayout = _GDIPlus_RectFCreate (140, 110, 100, 20)
_GDIPlus_GraphicsDrawStringEx ($hGraphic, "Hello world", $hFont, $tLayout, $hFormat, $hBrush)
; Loop until user exits
Do
Until not WinExists($title)
; Clean up resources
_GDIPlus_FontDispose ($hFont)
_GDIPlus_FontFamilyDispose ($hFamily)
_GDIPlus_StringFormatDispose ($hFormat)
_GDIPlus_BrushDispose ($hBrush)
_GDIPlus_GraphicsDispose ($hGraphic)
_GDIPlus_Shutdown ()
EndFunc ;==>_Main
[/autoit]
(Grad ausm Kopf nachgeschrieben, es kamen keine Errors )
Das funktioniert in normalen programmen wie Notepad auch ganz gut, allerdings verschwindet das im Spiel nach ca. 300-500 ms, also kaum lesbar.
Dazu Frage 2 : Kann man das irgendwie dauerhaft schreiben ?
Also so, dass es sozusagen im Bildschirm eingebrannt ist ? Ihr wisst bestimmt was ich meine
Und frage 3 : was könnte man noch machen, um in einem Vollbildspiel eine AutoIt-Nachricht anzuzeigen ?
Mfg,
Dankeschön