查看源代码 wxFontPickerCtrl (wx v2.4.3)
此控件允许用户选择字体。
通用实现是一个按钮,点击时会弹出wxFontDialog
。原生实现可能有所不同,但通常是一个(小型)小部件,可以访问字体选择器对话框。只有当wxUSE_FONTPICKERCTRL
设置为 1(默认值)时才可用。
样式
此类支持以下样式
wxFNTP_DEFAULT_STYLE:默认样式:wxFNTP_FONTDESC_AS_LABEL | wxFNTP_USEFONT_FOR_LABEL。
wxFNTP_USE_TEXTCTRL:在选择器按钮的左侧创建一个文本控件,该控件完全由
wxFontPickerCtrl
管理,用户可以使用它来指定字体(请参阅 SetSelectedFont)。文本控件会自动与按钮的值同步。使用wxPickerBase
中定义的函数来修改文本控件。wxFNTP_FONTDESC_AS_LABEL:保持按钮的标签更新字体名称和字体大小。例如,从字体对话框中选择“Times New Roman bold, italic with size 10”,会将标签(覆盖任何之前的标签)更新为“Times New Roman, 10”文本。
wxFNTP_USEFONT_FOR_LABEL:使用当前选择的字体绘制按钮的标签。
请参阅
此类派生自,并且可以使用以下函数:
wxWidgets 文档:wxFontPickerCtrl
事件
此类发出的事件类型
概要
类型
-type wxFontPickerCtrl() :: wx:wx_object().
函数
-spec create(This, Parent, Id) -> boolean() when This :: wxFontPickerCtrl(), Parent :: wxWindow:wxWindow(), Id :: integer().
-spec create(This, Parent, Id, [Option]) -> boolean() when This :: wxFontPickerCtrl(), Parent :: wxWindow:wxWindow(), Id :: integer(), Option :: {initial, wxFont:wxFont()} | {pos, {X :: integer(), Y :: integer()}} | {size, {W :: integer(), H :: integer()}} | {style, integer()} | {validator, wx:wx_object()}.
使用给定的参数创建此小部件。
返回:如果控件创建成功则为 true,如果创建失败则为 false。
-spec destroy(This :: wxFontPickerCtrl()) -> ok.
销毁对象
-spec getMaxPointSize(This) -> integer() when This :: wxFontPickerCtrl().
返回用户选择的字体允许的最大磅值。
-spec getSelectedFont(This) -> wxFont:wxFont() when This :: wxFontPickerCtrl().
返回当前选择的字体。
请注意,此函数与 wxWindow:getFont/1
完全不同。
-spec new() -> wxFontPickerCtrl().
-spec new(Parent, Id) -> wxFontPickerCtrl() when Parent :: wxWindow:wxWindow(), Id :: integer().
等价于 new(Parent, Id, [])
。
-spec new(Parent, Id, [Option]) -> wxFontPickerCtrl() when Parent :: wxWindow:wxWindow(), Id :: integer(), Option :: {initial, wxFont:wxFont()} | {pos, {X :: integer(), Y :: integer()}} | {size, {W :: integer(), H :: integer()}} | {style, integer()} | {validator, wx:wx_object()}.
初始化对象并使用所有参数调用 create/4
。
-spec setMaxPointSize(This, Max) -> ok when This :: wxFontPickerCtrl(), Max :: integer().
设置用户选择的字体允许的最大磅值。
默认值为 100。请注意,大型字体在创建和渲染时都需要大量的内存和 CPU 时间;因此,特别是由于用户可以选择通过文本控件指定字体大小(请参阅 wxFNTP_USE_TEXTCTRL),当大型字体没有太大意义时,最好限制最大字体大小。
-spec setSelectedFont(This, Font) -> ok when This :: wxFontPickerCtrl(), Font :: wxFont:wxFont().
设置当前选择的字体。
请注意,此函数与 wxWindow:setFont/2
完全不同。