Skip to content

控件类型映射表

内置参数控件一览

(一)Python内置类型的默认控件

控件类型 控件配置类型 对应参数类型 说明 外观
IntSpinBox IntSpinBoxConfig int 用于输入int类型数据。 intspin.png
FloatSpinBox FloatSpinBoxConfig float 用于输入float类型数据。 floatspin.png
BoolBox BoolBoxConfig bool 用于输入bool类型数据。 boolbox.png
LineEdit LineEditConfig str 用于输入str类型数据。 lineedit.png
DictEdit DictEditConfig dicttyping.DictMappingMutableMapping 用于字典类型数据的输入。
ListEdit ListEditConfig listtyping.List 用于列表类型数据的输入。
TupleEdit TupleEditConfig tupletyping.Tuple 用于元组类型数据的输入。
SetEdit SetEditConfig settyping.SetMutableSet 用于集合类型数据的输入。
DateEdit DateEditConfig date 该控件用于输入日期,是python内置datetime.date类型参数的默认输入控件。
TimeEdit TimeEditConfig time 该控件用于输入日期,是python内置datetime.time类型参数的默认输入控件。
DateTimeEdit DateTimeEditConfig datetime 该控件用于输入日期时间,是python内置datetime.datetime类型参数的默认输入控件。
ExclusiveChoiceBox ExclusiveChoiceBoxConfig typing.Literal 用于从一组选项中选择一个选项,是typing.Literal类型的默认控件,可以自动提取Literal所有给定的字面量并将其作为可选项。
PyLiteralEdit PyLiteralEditConfig typing.AnyobjectUnion[str,bytes,bool,int,float,list,tuple,set,dict,None] PyLiteralEdit主要用于Python字面量的输入,是AnyobjectUnion等类型参数的默认输入控件。 Python字面量是指ast.eval_literal()支持的任意Python字面量,包括:字符串、字节对象、数值、元组、列表、字典、集合、布尔值等。
EnumSelect EnumSelectConfig enum.Enum 用于Enum(枚举类型)值的输入

(二)语义化类型(扩展类型)及其控件

语义化类型是从内置类型中扩展而来的类型,很多时候,可以看作是对应内置类型的“别名”,在使用上与对应内置类型没有区别。

语义化类型(扩展类型)的主要作用在于,提供区别于对应内置类型默认控件的专用控件,以满足特定场景下的输入需求。比如int_slider_tint类型的语义化类型(扩展类型),在使用上与int类型一致,但它对应的输入控件是一个Slider(滑动条),而不是一个SpinBox

通过合理使用语义化类型(扩展类型),开发者可以构建出界面更加丰富,用户交互体验更加良好的应用程序。以下是PyGUIAdapter提供的语义化类型(扩展类型)及其对应的控件。

所有的语义化类型(扩展类型)均在pyguiadapter.extend_types模块中定义,可以通过以下方式导入:

from pyguiadapter.extend_types import TYPE_NAME

其中,TYPE_NAME是需要导入的类型名称。比如,对于int_slider_t,可以通过如下方式导入:

from pyguiadapter.extend_types import int_slider_t
控件类型 控件配置类型 对应数据类型 说明 外观
IntLineEdit IntLineEditConfig int_t int_t扩展自int,可以看作是int类型的别名。PyGUIAdapter为该类型提供了一个单行文本输入框样式的输入组件,但于与一般单行文本输入框,该类型的输入组件只允许用户输入整数文本。
FloatLineEdit FloatLineEditConfig float_t float_t扩展自float,可以看作是float类型的别名。PyGUIAdapter为该类型提供了一个单行文本输入框样式的输入组件,但于与一般单行文本输入框标题,该类型的输入组件只允许用户输入浮点数文本。
TextEdit TextEditConfig text_t text_t扩展自str,可以看作是str类型的别名。PyGUIAdapter为该类型提供了一个多行文本输入框,允许用户输入多行文本。
Slider SliderConfig int_slider_t int_slider_t扩展自int,可以看作是int类型的别名。与其他int不同,PyGUIAdapter为该类型提供了滑动条形式的输入控件。
Dial DialConfig int_dial_t int_dial_t扩展自int,可以看作是int类型的别名。与其他int不同,PyGUIAdapter为该类型提供了刻度盘形式的输入控件。
ColorPicker ColorPickerConfig color_t、color_hex_t、color_tuple_t color_t扩展自object,代表颜色类型的数据,实际支持的类型包括tuple(3元素或4元素元组)、strQColor,发者可以选择颜色的表示方式。PyGUIAdapter为该类型提供了一个颜色选择器。
ChoiceBox ChoiceBoxConfig choice_t 该类型扩展自objectPyGUIAdapter为该类型提供了一个下拉选择框,用户可以从一组选项中选择其中一个。
MultiChoiceBox MultiChoiceBoxConfig choices_t 该类型扩展自list,用于从一组对象中选择多个对象。
KeySequenceEdit KeySequenceEditConfig key_sequence_t key_sequence_t扩展自str,代表快捷键。
PlainDictEdit PlainDictEditConfig plain_dict_t plain_dict_t类型扩展自dict,用于Dict[key, int|bool|float|str|list|dict]类型数据的输入。
StringListEdit StringListEditConfig string_list_t string_list_t扩展自list,用于List[str]类型数据的输入。
JsonEdit JsonEditConfig json_obj_t json_obj_t扩展自object,用于json类型数据的输入。用户在控件上输入的文本将通过json.loads转换为对应的Python对象。
DirSelect DirSelectConfig directory_tdir_t directory_t扩展自str,代表一个目录路径,PyGUIAdapter为该类型提供了一个文件选择对话框用于选择目录。
FileSelect FileSelectConfig file_t file扩展自str,代表一个文件路径,PyGUIAdapter为该类型提供了一个文件选择对话框用于选择文件。
MultiFileSelect MultiFileSelectConfig files_t files扩展自list,代表一组文件路径,PyGUIAdapter为该类型提供了一个文件选择对话框用于选择多个文件。
PathListEdit PathListEditConfig path_list_t List[str]类型的扩展类型,语义上代表一个路径列表,支持添加文件路径和文件夹路径。
FileListEdit FileListEditConfig file_list_t List[str]类型的扩展类型,语义上代表一个路径列表,支持添加文件路径。
DirectoryListEdit DirectoryListEditConfig dir_list_t List[str]类型的扩展类型,语义上代表一个路径列表,支持添加文件夹路径。
FontSelect FontSelectConfig font_t str类型的扩展类型,语义上代表一个字体名称,提供下拉框供用户选择当前系统已安装字体。
IntQuantityBox IntQuantityBoxConfig int_quantity_t tuple类型的扩展类型,具体为一个二元素元组Tuple[int, str |None],语义上代表一个整数型的数量(所谓数量即带单位的量),第一个元素为数量的值,第二个元素为数量的单位。实现了专门的输入控件,允许用户输入数量的值和选择数量的单位。
FloatQuantityBox FloatQuantityBoxConfig float_quantity_t tuple类型的扩展类型,具体为一个二元素元组Tuple[float, str |None],语义上代表一个浮点型的数量(所谓数量即带单位的量),第一个元素为数量的值,第二个元素为数量的单位。实现了专门的输入控件,允许用户输入数量的值和选择数量的单位。
PathsEditor PathsEditorConfig paths_t List[str]的扩展类型,语义上表示一组路径,提供了一个功能丰富的外置路径编辑器,通过该编辑器,用户可以方便地管理一组路径,包括添加、删除以及改变路径的顺序。