Servus Leute,
Ich Habe hier ein kleines "Schönheitsproblem" mit einer GUI. Diese möchte ich dynamisch vergrößern/verkleinern.
Das klappt zwar auch, allerdings sieht das eher merkwürdig aus (einfach mal Skript starten und die Buttons nutzen)
Spoiler anzeigen
#include <Array.au3>
#include <ArrayMore.au3>
#include <GuiConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <StaticConstants.au3>
#include <ButtonConstants.au3>
Opt("GUIResizeMode",$GUI_DOCKALL)
Opt("GUIOnEventMode", 0)
main()
[/autoit] [autoit][/autoit] [autoit]Func main()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Local $column[1], $attrib[1], $result[1][2], $gui
Local $height = 50, $gheight = 140
GUISetState(@SW_HIDE, $gui)
[/autoit] [autoit][/autoit] [autoit]$child = GUICreate("Neue Tabelle", 380, 140, -1, -1, BitOr($GUI_SS_DEFAULT_GUI, $WS_CHILD), -1, $gui)
[/autoit] [autoit][/autoit] [autoit]GUICtrlCreateLabel("Tabellenname:", 15, 15, 80, 20)
[/autoit] [autoit][/autoit] [autoit]$tabellenname = GUICtrlCreateInput("", 110, 15, 120, 20)
[/autoit] [autoit][/autoit] [autoit]GUICtrlCreateLabel("Spaltennamen:", 15, 50, 80, 20)
[/autoit] [autoit][/autoit] [autoit]$column[0] = GUICtrlCreateInput("", 110, 50, 120, 20)
[/autoit] [autoit][/autoit] [autoit]$attrib[0] = GUICtrlCreateCombo("", 245, 50, 120, 20)
GUICtrlSetData(-1, "Text|Int|Real|Blub")
$plus = GUICtrlCreateButton("", 260, 10, 30, 30, $BS_ICON)
GUICtrlSetImage(-1, "shell32.dll", 5)
$minus = GUICtrlCreateButton("", 310, 10, 30, 30, $BS_ICON)
GUICtrlSetImage(-1, "shell32.dll", 32)
$anlegen = GUICtrlCreateButton("Anlegen", 15, 80, 80, 20)
[/autoit] [autoit][/autoit] [autoit]$abbrechen = GUICtrlCreateButton("Abbrechen", 15, 110, 80, 20)
[/autoit] [autoit][/autoit] [autoit]GUISetState(@SW_SHOW, $child)
[/autoit] [autoit][/autoit] [autoit]While 1
[/autoit] [autoit][/autoit] [autoit]$msg = GUIGetMsg()
[/autoit] [autoit][/autoit] [autoit]Select
Case $msg = $GUI_EVENT_CLOSE Or $msg = $abbrechen
GUIDelete($child)
GUISetState(@SW_SHOW, $gui)
Return 0
Case $msg = $plus
_ArrayAdd($column, "")
_ArrayAdd($attrib, "")
$column[UBound($column)-1] = GUICtrlCreateInput("", 110, $height + (UBound($column) - 1)*30, 120, 20)
$attrib[UBound($attrib)-1] = GUICtrlCreateCombo("", 245, $height + (UBound($attrib) - 1)*30, 120, 20)
GUICtrlSetData(-1, "Text|Int|Real|Blub")
WinMove("Neue Tabelle", "", Default, Default, 386, $gheight + (UBound($column) - 1)*30)
Case $msg = $minus
If UBound($column) > 1 Then
GUICtrlDelete($column[UBound($column) - 1])
GUICtrlDelete($attrib[UBound($attrib) - 1])
_ArrayDelete($column, UBound($column))
_ArrayDelete($attrib, UBound($attrib))
WinMove("Neue Tabelle", "", Default, Default, 386, $gheight + (UBound($column)*30))
EndIf
Case $msg = $anlegen
For $i = 0 To Ubound($column) -1
If GUICtrlRead($column[$i]) = "" Then ExitLoop
$result[$i][0] = StringReplace(GUICtrlRead($column[$i]), " ", "")
$result[$i][1] = GUICtrlRead($attrib[$i])
_Array2DAdd($result,"")
Next
$result[UBound($result,1)-1][0] = GUICtrlRead($tabellenname)
GUIDelete($child)
GUISetState(@SW_SHOW, $gui)
Return $result
EndSelect
[/autoit] [autoit][/autoit] [autoit]Sleep(30)
[/autoit] [autoit][/autoit] [autoit]DllCall("Psapi.dll", 'int', 'EmptyWorkingSet', 'long', -1)
[/autoit] [autoit][/autoit] [autoit]WEnd
[/autoit] [autoit][/autoit] [autoit]EndFunc
[/autoit]Ich danke für die Hilfe.
Gruß
Prajoss
ps: weiß grad jemand aus dem Kopf wie man Ressourcen(Bild-Dateien) in Bit Code umwandelt um diese direkt im Script einzubinden?