Übermalen. Einfach das Hintergrundbild neu malen. Das ist das Grundprinzip jedes Computerspiels. Egal ob sich etwas ändert oder nicht, es wird einfach mit einer bestimmten Frequenz (FPS) alles neu gezeichnet, weil Abfragen viel zu lange dauern würden. Beim neuzeichnen musst du natürlich die Reihenfolge beachten. Zuerst wird das gezeichnet was nachher zuunterst sein soll. Also der Hintergrund. Wenn dein Hintergrund die Grafik nicht aufüllen sollte ist es empfehlenswert einfach mit _GDIPlus_GraphicsClear die Grafik komplett in einer Farbe zu färben. Das geht auch wesentlich schneller als ein Bild zu zeichnen. Ich würde dir empfehlen, bevor du mit deinem Spiel so richtig loslegst, erstmal ein bisschen was zu Game-Engines allgemein durchzulesen (nur ganz oberflächlich), dann dich mit GDI+ vertrauter zu machen (ggf. mit Tutorial oder Beispielen), und dann mal ein paar der bereits vorhandenen GDI+ basierten AutoIt Spiele hier im Forum anzuschauen. Davon gibt es einige, mehr oder weniger umfangreich/kompliziert. Ich hab auch ein paar kleinere gemacht, und Marsi hat sogar ein sehr gutes Tower Defense Spiel gemacht (das dürfte für dich relevant sein?).
Und zu deiner 2ten Frage: Ja, natürlich ist es möglich. Im Grunde ist hier alles möglich, und nur eine Frage des Aufwands.
Wenn du es nicht übertreibst und mehr als 400 Objekte gleichzeitig auf dem Bildschirm rumlaufen lässt, läuft das dann auch flüssig (ansonsten geht da schnell die Framerate in den Keller und es sieht nicht mehr so toll aus). Eine unbestimmte Anzahl von Objekten solltest du immer in Arrays unterbringen und verwalten.
Beiträge von name22
-
-
Ich weiß nicht, wofür man da AutoIt brauchen sollte...
Außerdem gibt es doch genau dafür die Checkbox "Für Dateien dieses Typs immer diese Aktion durchführen", das machst du einmal für .pdf Dateien und dann wars das. Änderst du das öfters, oder wieso willst du das mit AutoIt automatisieren?
-
Zeig mal dein Script, bevor hier nur noch rumgeraten wird, woran das Problem liegen könnte.
-
Der ist aber nicht unbedingt derjenige, der die UDF in die fertige AutoIt Version packt. Ich weiß nicht was effektiver ist, Hauptsache irgendjemand mit Einfluss wird auf das Problem aufmerksam.
-
Zitat
das ist keine AutoIt-Integriert entwickelte Funktion

... Doch
. Sie ist zumindest bei den Standard Includes dabei, und wenn dafür Beispiele in der Hilfedatei sind, sollten die auch funktionieren, findest du nicht? -
Hm.. Aus irgendeinem Grund klapt das mit Combo Controls nicht. Vielleicht übersehe ich auch gerade auch nur etwas...
-
Ich nehme an dein Beispiel sollte eigentlich so aussehen:
[autoit]$test = "F9"
[/autoit]
HotKeySet("{$test}")
[autoit]
Und funktionieren würde das ganze so:$test = "{F9}"
[/autoit]
HotKeySet($test, "Test")
[autoit]
beziehungsweise, wenn der User nur eine Taste ohne {} angeben soll:$test = "F9"
[/autoit]
HotKeySet("{" & $test & "}", "Test") -
Schau dir mal ControlCommand an. Damit lassen sich Comboboxen steuern. Alle Möglichkeiten diesbezüglich stehen in der Hilfe zu dem Befehl ;).
-
So vielleicht? Der Code der bei dir auskommentiert ist, ist übrigens Blödsinn.
Spoiler anzeigen
[autoit]#include <GUIConstantsEx.au3>
[/autoit] [autoit][/autoit] [autoit]$Form1 = GUICreate("Form1", 625, 443, 192, 124)
[/autoit] [autoit][/autoit] [autoit]
$Input1 = GUICtrlCreateInput("Input1", 104, 192, 321, 21)
$Combo1 = GUICtrlCreateCombo("Combo1", 104, 88, 145, 25)
$Label1 = GUICtrlCreateLabel("Fokus", 112, 272, 80, 17)
GUISetState(@SW_SHOW)While 1
[/autoit]
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
Switch ControlGetHandle($Form1, "", ControlGetFocus($Form1))
Case ControlGetHandle($Form1, "", $Input1)
If GUICtrlRead($Label1) <> "Input Fokus" Then GUICtrlSetData($Label1, "Input Fokus")
Case ControlGetHandle($Form1, "", $Combo1)
If GUICtrlRead($Label1) <> "Combo Fokus" Then GUICtrlSetData($Label1, "Combo Fokus")
Case Else
If GUICtrlRead($Label1) <> "Kein Fokus" Then GUICtrlSetData($Label1, "Kein Fokus")
EndSwitch
WEnd -
Soweit ich weiß, funktionieren die AutoIt Control-Befehle nur mit den "Standard" Windows Controls. Ich weiß nicht ob das beim Adobe Reader auch klappt. Es funktioniert auf jeden Fall nicht bei allen Controls.
-
Zitat
wie genau soll man solchen befehl verstehen und woher weiß ich was für ein befehl ich alles hinter dem punkt schreiben kann??
[autoit]
Das sind Objekte. Ich hab jetzt nicht wirklich Lus zu erklären was die sind, das würde nämlich einige Zeit dauern. Objekte sind in AutoIt auf jedenfall nur beschränkt verwendbar (außer man verwendet die AutoItObject UDF).
Im Fall von dieser Zeile,$objItem.ScreenSaverActive
[/autoit]wird das Attribut ScreenSaverActive des Objekts in $objItem abgerufen. Hier wird das Objekt wie eine Datenstruktur ähnlich eines Arrays behandelt. Nur sehr viel mächtiger.
Wenn du mal nach OOP googlest findest du noch sehr viel detailliertere Infos zu dem Thema.Zitatgibt es irgendwo eine liste wo all diese befehle aufgelistet sind und wie genau wirken sie???
Kommt auf das Objekt an, das ist schließlich nicht wie bei einem standard AutoIt-Befehl. Oft stehen die Beschreibungen für die verschiedenen abrufbaren Objekte in den Dokumentationen zu den Produkten/Programmen von denen sie stammen. Wenn du z.B. Excel über Objekte steuern willst, findest du vielleicht in einer entsprechenden Dokumentation von Microsoft etwas darüber. Dann gibts auch noch den OLE/COM Object Viewer.
Falls ich hier Blödsinn erzähle dann verbessert mich bitte ^^. Ich hab schon knapp die Hälfte meines OOP Wissens vergessen. -
Zitat
Den Preis von 440 € finde ich etwas überteuert
Vielleicht ein ganz klein wenig....
Der Funktionsumfang ist zwar schon recht beeindruckend, aber 440€? Niemals... -
Na Gottseidank....
Jetzt kannst du ja noch das Präfix auf Gelöst setzen indem du deinen ersten Beitrag bearbeitest und dann ist alles wieder in Butter. -
Herzlichen Glückwunsch, ich wünsch dir noch ne schöne Zeit mit deinem neuen Familienmitglied :D.
-
Du machst also einen Rechtsklick auf eine .au3 Datei, und keiner der Einträge ist vorhanden?
-
... Zattoo Mach mit den Daten im Quellcode-Feld von Lottichs Beitrag einfach den selben Vorgang wie vorhin, mit der .reg Datei...
-
Auf der Webseite und im Wiki findet man ein paar vereinzelte Sachen diesbezüglich.
Google liefert dir vielleicht auch noch ein paar Vorschläge. Es gibt definitiv Anwendungsgebiete, was in deinen Skurrilen Emails steht ist Blödsinn ^^... Und der Preis ist wohl einer der größten Pluspunkte an dem Teil.
Edit: Hier ist auch noch was.
Edit2: Das Ding als eine Art mini Spielekonsole für Bastler zu benutzen ist auch ne coole Idee. Eine Grafikleistung ähnlich der ersten XBox und angeblich besser als das iPhone 4S dürfte mit OpenGL unterstützung doch ganz spaßig sein. -
Zitat
woher soll man das nur wissen?
AutoIt Hilfe -> _ArrayDisplay. In SciTE _ArrayDisplay markieren und F1 drücken, oder oben auf AutoIt.de auf Online-Hilfe klicken. -
Zitat
Solche semiprofessionellen, kostenlosen Programme wie Gimp haben das nicht drauf?
Das bezweifle ich.. Gute Gesichtserkennungssoftware kriegst du vermutlich nur für Geld.ZitatUnd was meinst du mit halbautomatisch?
Wahrscheinlich, dass du immer noch die Bilder selbst laden und das Plugin starten musst. -
Was steht bei dir denn jetzt unter: HKCR\.au3? Mach mal nen Rechtsklick auf den Ordner -> Exportieren, speicher die Datei, Rechstklick auf die Datei -> Bearbeiten und poste hier mal den Inhalt.