函数参考


_GUICtrlRichEdit_ChangeFontSize

递增或递减选定文本的字体大小

#Include <GuiRichEdit.au3>
_GUICtrlRichEdit_ChangeFontSize($hWnd, $iIncrement)

参数

$hWnd 控件句柄
$iIncrement 正值递增; 负值递减

返回值

成功: 返回 True - 字体大小被改变
失败: 返回 False, 并设置 @error
@error: 101 - $hWnd 参数值不是句柄
102 - $iIncrement 参数值不是数字
-1 - 没有选择文本

注意/说明

 如果选定的文本中有多个字体尺寸,将同时递增/递减

 如果 $iIncrement 为正值, 字体大小只入不舍; 如果 $iIncrement 为负值, 将只入不舍.

 Rich Edit 添加 $iIncrement 值到现有字体大小.递增/递减四舍五入列举如下:
 <= 12 points: 1 例如: 7 + 1 => 8 points, 14 - 3 => 10 points
 12.05 到 28 points: 20 + 2.25 => 24 points
 28.05 到 80 points: 四舍五入到下一个 28, 36, 48, 72 或 80, 例如: 28 + 1 => 36 points, 80 - 1 => 72 points
 > 80 points: 10, 例如: 80 + 1 => 90

相关

_GUICtrlRichEdit_SetFont

详情参考

在MSDN中搜索


示例/演示


#include <GuiRichEdit.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>

Global $lblMsg, $hRichEdit

Main()

Func Main()
    Local $hGui, $iMsg, $btnDoIt
    $hGui = GUICreate("Example (" & StringTrimRight(@ScriptName, 4) & ")", 320, 350, -1, -1)
    $hRichEdit = _GUICtrlRichEdit_Create($hGui, "This is a test.", 10, 10, 300, 220, _
            BitOR($ES_MULTILINE, $WS_VSCROLL, $ES_AUTOVSCROLL))
    $lblMsg = GUICtrlCreateLabel("", 10, 235, 300, 60)
    $btnDoIt = GUICtrlCreateButton("Do it", 270, 310, 40, 30)
    GUISetState()

    _GUICtrlRichEdit_SetSel($hRichEdit, 0, -1) ; select all

    While True
        $iMsg = GUIGetMsg()
        Select
            Case $iMsg = $GUI_EVENT_CLOSE
                _GUICtrlRichEdit_Destroy($hRichEdit) ; 除非脚本崩溃才需要
;~              GUIDelete()     ; 同样行
                Exit
            Case $iMsg = $btnDoIt
                ChangeFontSize()
        EndSelect
    WEnd
EndFunc   ;==>Main

Func ChangeFontSize()
    Local $av, $iOld, $iNew
    $av = _GUICtrlRichEdit_GetFont($hRichEdit)
    $iOld = $av[0]
    _GUICtrlRichEdit_ChangeFontSize($hRichEdit, 2)
    $av = _GUICtrlRichEdit_GetFont($hRichEdit)
    $iNew = $av[0]
    Report("Was " & $iOld & " points; is now " & $iNew & " points")
EndFunc   ;==>ChangeFontSize

Func Report($sMsg)
    GUICtrlSetData($lblMsg, $sMsg)
EndFunc   ;==>Report