Zeichen im GUICtrlCreateEdit zentrieren?!? Wer weiss bescheid?

  • Hallo,

    ich bastel an einem Font-Tool, jedoch wie bewerkstellige ich es das die Buchstaben in den Edit-Fenstern immer mittig/zentriert dargestellt werden?

    Jemand nen Tip?

    Spoiler anzeigen
    [autoit]

    #include <ButtonConstants.au3>
    #include <ComboConstants.au3>
    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <GUIListBox.au3>
    #include <WindowsConstants.au3>
    #include <GuiListView.au3>
    #include <File.au3>
    #include <Array.au3>
    #include <ListviewConstants.au3>
    #include <RegFunc.au3>
    #include <GuiComboBox.au3>
    #include <ScreenCapture.au3>
    #Include <GuiButton.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $fDblClk = False
    Dim $aItems[1500]
    Dim $aktFontNames[1500]
    Dim $Fonts[1500]
    Dim $FontDatName[1500]
    Dim $arrays[1500][3]
    Dim $result[1000]
    $abc = 'a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z'
    $abcSplit = StringSplit($abc, ',', 1)
    $FontList = _FileListToArray(@WindowsDir & '\Fonts', '*.ttf', 1)
    ;_ArrayDisplay($abcSplit)
    $f = 1
    $x = 1
    Local $sText
    If @error = 1 Then
    MsgBox(0, "", "No Folders Found.")
    Exit
    EndIf
    If @error = 4 Then
    MsgBox(0, "", "No Files Found.")
    Exit
    EndIf
    $var = _GetRegValues('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts')
    ;_ArrayDisplay($FontList, "$FileList")
    ;_ArrayDisplay($var)
    #region ### START Koda GUI section ### Form=c:\dokumente und einstellungen\schlafzimmergabi\desktop\form1_1.kxf
    $Form1_1 = GUICreate("Font Tool", 550, 190, 250, 159)
    $Datei = GUICtrlCreateMenu("&Datei")
    $MenuItem1 = GUICtrlCreateMenuitem("Optionen" & @TAB & "", $Datei)
    $MenuItem2 = GUICtrlCreateMenuitem("Exit" & @TAB & "", $Datei)
    $Hilfe = GUICtrlCreateMenu("&Hilfe")
    $Edit1 = GUICtrlCreateEdit("", 16, 56, 70, 70, BitOR($ES_CENTER, $ES_READONLY, $ES_WANTRETURN, $WS_BORDER, $ES_UPPERCASE), BitOR($WS_EX_CLIENTEDGE, $WS_EX_STATICEDGE))
    GUICtrlSetData($Edit1, "A")
    GUICtrlSetFont($Edit1, 32, 400, 0, "font")
    $Edit2 = GUICtrlCreateEdit("", 89, 56, 70, 70, BitOR($ES_CENTER, $ES_READONLY, $ES_WANTRETURN, $WS_BORDER, $ES_LOWERCASE), BitOR($WS_EX_CLIENTEDGE, $WS_EX_STATICEDGE))
    GUICtrlSetData($Edit2, "a")
    GUICtrlSetFont($Edit2, 32, 400, 0, "font")
    $ButtonFont = GUICtrlCreateButton(@WindowsDir & '\Fonts', 16, 6, 144, 18)
    $Progress1 = GUICtrlCreateProgress(16, 130, 144, 8)
    $Combo1 = GUICtrlCreateCombo("Alle", 16, 30, 145, 25, BitOR($GUI_SS_DEFAULT_COMBO, $WS_BORDER))
    ;GUICtrlSetData($Combo1, "Arial|Comic Sans MS|Courier New|Lucida Sans")
    $Button1 = GUICtrlCreateButton("Start", 24, 144, 57, 17)
    $Button2 = GUICtrlCreateButton("Abbruch", 97, 144, 57, 17)
    $listview = GUICtrlCreateListView("Nr.|Datei|Name", 175, 5, 360, 145)
    $hLV_Handle = GUICtrlGetHandle($listview)
    _GUICtrlListView_SetColumnWidth($listview, 0, 28)
    _GUICtrlListView_SetColumnWidth($listview, 2, 215)
    ;$List1 = GUICtrlCreateList("", 168, 24, 137, 110, BitOR($LBS_NOTIFY,$LBS_SORT,$LBS_MULTICOLUMN,$WS_BORDER))
    GUICtrlSetData($listview, "")
    GUISetState(@SW_SHOW)
    #endregion ### END Koda GUI section ###
    GUIRegisterMsg($WM_NOTIFY, "MY_WM_NOTIFY")
    For $a = 1 To UBound($var)
    If StringRight($var[$a - 1][2], 3) = 'ttf' Then
    ;MsgBox(0, "Found", $var[$a - 1][2])
    $aItems[$x] = GUICtrlCreateListViewItem($x & '|' & $var[$a - 1][2] & '|' & $var[$a - 1][0], $listview)
    $arrays[$x][0] = $x
    $arrays[$x][1] = $var[$a - 1][0]
    $arrays[$x][2] = $var[$a - 1][2]
    ;_ArrayDisplay($arrays)
    $FontDatName[$x] = $var[$a - 1][0]
    $Fonts[$x] = $var[$a - 1][2]
    $aktFontNames[$x] = GUICtrlSetData($Combo1, $var[$a - 1][0])
    ;MsgBox(0, "Clicked", $Fonts[$x])
    $x = $x + 1
    EndIf
    Next
    ;_ArrayDisplay($arrays)
    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $MenuItem2
    Exit
    Case $ButtonFont
    $fod = FileSelectFolder('Fontordner wählen', '')
    GUICtrlSetData($ButtonFont, $fod)
    If _GUICtrlButton_GetText($ButtonFont) = '' Then
    GUICtrlSetData($ButtonFont, @WindowsDir & '\Fonts')
    EndIf
    _GUICtrlListView_DeleteAllItems($listview)
    $FontList = _FileListToArray($fod, '*.ttf', 1)
    Case $Combo1
    If _GUICtrlComboBox_GetEditText($Combo1) <> 'Alle' Then
    ;MsgBox(0, "Clicked", _GUICtrlComboBox_GetEditText($Combo1))
    $results = StringTrimRight(_GUICtrlComboBox_GetEditText($Combo1), 11)
    $iIndex = _ArraySearch($arrays, _GUICtrlComboBox_GetEditText($Combo1), 0, 0, 0, 1, 1)
    ;MsgBox(0, "Gefunden an Stelle", $iIndex)
    ;MsgBox(0, "Font Name", $arrays[$iIndex][1])
    $result = StringTrimRight($arrays[$iIndex][1], 11)
    GUICtrlSetFont($Edit1, 32, 400, 0, $result)
    GUICtrlSetFont($Edit2, 32, 400, 0, $result)
    EndIf
    Case $Button1
    If _GUICtrlComboBox_GetEditText($Combo1) == 'Alle' Then
    For $z = 1 To $x
    Sleep(10)
    $res = StringTrimRight($arrays[$z][1], 11)
    GUICtrlSetFont($Edit1, 32, 400, 0, $res)
    GUICtrlSetFont($Edit2, 32, 400, 0, $res)
    GUICtrlSetData($Combo1, $arrays[$z][1])
    GUICtrlSetData($Progress1, $z / $x * 100)
    For $s = 1 To $abcSplit[0]
    Sleep(10)
    GUICtrlSetData($Edit1, $abcSplit[$s])
    GUICtrlSetData($Edit2, $abcSplit[$s])
    $hMenu1 = GUICtrlGetHandle($Edit1)
    $hMenu2 = GUICtrlGetHandle($Edit2)
    $SsTake1 = _ScreenCapture_CaptureWnd('', $hMenu1, 4, 4, 66, 66)
    $SsTake2 = _ScreenCapture_CaptureWnd('', $hMenu2, 4, 4, 66, 66)
    _ScreenCapture_SaveImage(@DesktopDir & '\pics\Pic_big_' & $res & '_' & $s & '.jpg', $SsTake1)
    _ScreenCapture_SaveImage(@DesktopDir & '\pics\Pic_small_' & $res & '_' & $s & '.jpg', $SsTake2)
    Next
    $s = 1
    GUICtrlSetData($Edit1, 'A')
    GUICtrlSetData($Edit2, 'a')
    Next
    Else
    $res = StringTrimRight(_GUICtrlComboBox_GetEditText($Combo1), 11)
    GUICtrlSetFont($Edit1, 32, 400, 0, $res)
    GUICtrlSetFont($Edit2, 32, 400, 0, $res)
    For $s = 1 To $abcSplit[0]
    GUICtrlSetData($Progress1, $s / $abcSplit[0]*100)
    $hMenu1 = GUICtrlGetHandle($Edit1)
    $hMenu2 = GUICtrlGetHandle($Edit2)
    GUICtrlSetData($Edit1, $abcSplit[$s])
    GUICtrlSetData($Edit2, $abcSplit[$s])
    $SsTake1 = _ScreenCapture_CaptureWnd('', $hMenu1, 4, 4, 66, 66)
    $SsTake2 = _ScreenCapture_CaptureWnd('', $hMenu2, 4, 4, 66, 66)
    _ScreenCapture_SaveImage(@DesktopDir & '\pics\Pic_big_' & $res & '_' & $s & '.jpg', $SsTake1)
    _ScreenCapture_SaveImage(@DesktopDir & '\pics\Pic_small_' & $res & '_' & $s & '.jpg', $SsTake2)
    Next
    $s = 1
    GUICtrlSetData($Edit1, 'A')
    GUICtrlSetData($Edit2, 'a')
    EndIf
    EndSwitch

    [/autoit] [autoit][/autoit] [autoit]

    If $fDblClk Then
    $fDblClk = False
    $aItem = _GUICtrlListView_GetItemTextArray($hLV_Handle)
    For $i = 1 To $aItem[0]
    $sText &= StringFormat("spalte[%2d] %s", $i, $aItem[$i]) & @LF
    Next
    ;~ MsgBox(4160, "Information", 'Text von Item' & @LF & @LF & $sText)
    ;~ MsgBox(0, "Double Clicked", _GUICtrlListView_GetItemText($hLV_Handle, _GUICtrlListView_GetSelectedIndices($hLV_Handle)))
    ;~ MsgBox(0, "Clicked", $aItem[3])
    ;MsgBox(0, "Name", $aItem[2])
    $result = StringTrimRight($aItem[3], 11)
    GUICtrlSetData($Combo1, $aItem[3])
    GUICtrlSetFont($Edit1, 32, 400, 0, $result)
    GUICtrlSetFont($Edit2, 32, 400, 0, $result)
    $sText = ''
    EndIf
    WEnd
    ; React to double clicks on ListView
    Func MY_WM_NOTIFY($hWnd, $iMsg, $wParam, $lParam)
    #forceref $hWnd, $iMsg, $wParam
    Local $tNMHDR = DllStructCreate("int;int;int", $lParam)
    If @error Then Return
    If DllStructGetData($tNMHDR, 1) = $hLV_Handle Then
    If DllStructGetData($tNMHDR, 3) = $NM_DBLCLK Then $fDblClk = True
    EndIf
    $tNMHDR = 0
    Return $GUI_RUNDEFMSG
    EndFunc ;==>MY_WM_NOTIFY

    [/autoit]