Hallo mal wieder.
Erstmal vorab: Ich weiß, dass ich hier - was Anfragen angeht - momentan sehr aktiv bin. Irgendwie ist mir das momentan total peinlich, aber ich weiß nicht, wo ich sonst fragen soll... :o
Nun aber zu meiner Anfrage:
Ich arbeite gerade familienintern an einem Gartenplanungs-Programm.
Im Prinzip steht schon fast alles.
Es gibt eine Startseite, in der ich ein Projekt erstellen kann, also mit Garten-Flächen, Gewächshausvorlagen und allem Drum und Dran.
Es gibt Dialogfenster, in denen ich Beete und Beetflächen einstellen kann (also mit / ohne Rand) -> Typen: quadratisch, rechteckig, kreisförmig
Es gibt auch schon eine Vorlage für (unser) Gewächshaus-Modell. Das steht auch schon als autoIt-Grafik.
Ich verwende dazu... besser gesagt, will dazu das Graphic-Objekt in AutoIt 3 nutzen.
Der aktuelle Code am Anfang sieht so aus:
$MainFrame = GUICreate("Garten Designer 2017 (Ver_1) - Gewächshaus designen", 810, 631, 191, 32, BitOR($GUI_SS_DEFAULT_GUI,$WS_SIZEBOX,$WS_THICKFRAME,$DS_MODALFRAME))
$PaintArea = GUICtrlCreateGraphic(0, 0, 540, 630)
GUICtrlSetColor(-1, 0x000000)
GUICtrlSetBkColor(-1, 0xFFFFFF)
GUICtrlSetGraphic(-1, $GUI_GR_COLOR, 0x000000, 0x800000)
GUICtrlSetGraphic(-1, $GUI_GR_RECT, 230, 225, 80, 400)
$Weg = GUICtrlCreateLabel("WEG", 238, 568, 63, 33)
GUICtrlSetFont(-1, 18, 800, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFFFFFF)
GUICtrlSetBkColor(-1, 0x800000)
; ... und weiter.
Alles anzeigen
Im oberen Bereich wird u.a. die Grafik erstellt sowie das Label für den Weg.
Manuell einfügen kann man dann per Button auch andere Textfelder, diese mit Text füllen und positionieren, sowie sie in einer ListBox anzeigen lassen. Funktoniert.
Was jetzt aber noch nicht funktioniert, ist dass ich per Knopfdruck ein Rechteck einfüge (in der Grafik).
Man sieht ja in Zeile (6) und (7), wie dort das Rechteck festgelegt wird (das ist hier die Vorlage vom Gewächshaus und der zentriert positionierte Weg).
Ich habe also den Code so formuliert:
Case $NewRectButton
; $Graphic1 = GUICtrlCreateGraphic(0, 0, 540, 630)
GUICtrlSetGraphic($Graphic1, $GUI_GR_COLOR, 0x000000, 0x800000)
GUICtrlSetGraphic($Graphic1, $GUI_GR_RECT, 10, 10, 40, 40)
; ... und weiter
Funktioniert nicht. Da tut sich rein gar nix.
Habe ich da jetzt irgendwas falsch gemacht??
Ach ja, zwischen rein:
- wenn ich das Semikolon in Zeile (2) entferne und den Button zweimal klicke, dann erscheint das Rechteck beim 1. Mal in der Liste und beim 2. Mal im Grafikbereich.
- mit dem Semikolon erscheint das Rechteck mit den Daten (Länge, Breite, Position, Name) in der ListBox, in der Grafik aber nicht.
Es wäre nett wenn ihr mir helfen könntet, das Rechteck dorthin zu positionieren, wo es am Anfang sein soll.
-----
Danke,
olfibits