查看源代码 wxXmlResource (wx v2.4.3)

这是与基于 XML 的资源系统交互的主要类。

该类保存来自一个或多个 .xml 文件、二进制文件或 zip 存档文件的 XML 资源。

请注意,这是一个单例类,您永远不会分配/释放它。只需使用静态 get/0 getter。

请参阅

wxWidgets 文档:wxXmlResource

摘要

函数

将未知控件附加到给定的面板/窗口/对话框。

删除所有处理程序并删除它们(这意味着使用 AddHandler() (在 wx 中未实现)添加的任何处理程序都必须在堆上分配)。

将 XRC 版本与参数进行比较。

销毁对象

获取全局资源对象,如果不存在则创建一个。

返回标志,它可以是 ?wxXmlResourceFlags 枚举值的位列表。

返回版本信息 (a.b.c.d = d + 256*c + 2562*b + 2563*a)。

返回一个数值 ID,该 ID 等效于 XML 资源中使用的字符串 ID。

初始化所有支持的控件/窗口的处理程序。

从与给定文件掩码匹配的 XML 文件加载资源。

从文件加载位图资源。

加载对话框。

从资源加载框架。

将框架的内容加载到现有的 wxFrame 上。

从文件加载图标资源。

从资源加载菜单。

从资源加载菜单栏。

加载工具栏。

等效于 new([])

构造函数。

构造函数。

设置全局资源对象并返回指向上一个对象的指针(可能为 NULL)。

设置标志(?wxXmlResourceFlags 枚举值的位列表)。

此函数卸载先前由 load/2 加载的资源。

类型

-type wxXmlResource() :: wx:wx_object().

函数

链接到此函数

attachUnknownControl(This, Name, Control)

查看源代码
-spec attachUnknownControl(This, Name, Control) -> boolean()
                              when
                                  This :: wxXmlResource(),
                                  Name :: unicode:chardata(),
                                  Control :: wxWindow:wxWindow().

等效于 attachUnknownControl(This, Name, Control, [])

链接到此函数

attachUnknownControl/4

查看源代码
-spec attachUnknownControl(This, Name, Control, [Option]) -> boolean()
                              when
                                  This :: wxXmlResource(),
                                  Name :: unicode:chardata(),
                                  Control :: wxWindow:wxWindow(),
                                  Option :: {parent, wxWindow:wxWindow()}.

将未知控件附加到给定的面板/窗口/对话框。

未知控件与 <object class="unknown"> 结合使用。

-spec clearHandlers(This) -> ok when This :: wxXmlResource().

删除所有处理程序并删除它们(这意味着使用 AddHandler() (在 wx 中未实现)添加的任何处理程序都必须在堆上分配)。

链接到此函数

compareVersion(This, Major, Minor, Release, Revision)

查看源代码
-spec compareVersion(This, Major, Minor, Release, Revision) -> integer()
                        when
                            This :: wxXmlResource(),
                            Major :: integer(),
                            Minor :: integer(),
                            Release :: integer(),
                            Revision :: integer().

将 XRC 版本与参数进行比较。

如果 XRC 版本小于参数,则返回 -1;如果大于参数,则返回 +1;如果相等,则返回 0。

-spec destroy(This :: wxXmlResource()) -> ok.

销毁对象

-spec get() -> wxXmlResource().

获取全局资源对象,如果不存在则创建一个。

-spec getFlags(This) -> integer() when This :: wxXmlResource().

返回标志,它可以是 ?wxXmlResourceFlags 枚举值的位列表。

-spec getVersion(This) -> integer() when This :: wxXmlResource().

返回版本信息 (a.b.c.d = d + 256*c + 2562*b + 2563*a)。

-spec getXRCID(Str_id) -> integer() when Str_id :: unicode:chardata().

等效于 getXRCID(Str_id, [])

链接到此函数

getXRCID(Str_id, Options)

查看源代码
-spec getXRCID(Str_id, [Option]) -> integer()
                  when Str_id :: unicode:chardata(), Option :: {value_if_not_found, integer()}.

返回一个数值 ID,该 ID 等效于 XML 资源中使用的字符串 ID。

如果请求了未知的 str_id(即,除了 wxID_XXX 或整数),则会创建一个新记录,该记录将给定的字符串与数字关联起来。

如果 value_if_not_foundwxID_NONE,则通过 wx_misc:newId/0 获取数字。否则,将使用 value_if_not_found

提供宏 XRCID(name) 以方便在事件表中使用。

注意:XRCID() 返回的 ID 不能与 EVT_*_RANGE 宏一起使用,因为它们分配给符号 name 值的顺序无法保证。

-spec initAllHandlers(This) -> ok when This :: wxXmlResource().

初始化所有支持的控件/窗口的处理程序。

这将使可执行文件变得非常大,因为它强制链接到 wxWidgets 库的大部分内容。

-spec load(This, Filemask) -> boolean() when This :: wxXmlResource(), Filemask :: unicode:chardata().

从与给定文件掩码匹配的 XML 文件加载资源。

示例

注意:如果启用了 wxUSE_FILESYS,则此方法理解 wxFileSystem(在 wx 中未实现)URL(请参阅 wxFileSystem::FindFirst()(在 wx 中未实现))。

注意:如果您确定参数是单个 XRC 文件的名称(而不是 URL 或通配符),请改用 LoadFile() (在 wx 中未实现)。

链接到此函数

loadBitmap(This, Name)

查看源代码
-spec loadBitmap(This, Name) -> wxBitmap:wxBitmap()
                    when This :: wxXmlResource(), Name :: unicode:chardata().

从文件加载位图资源。

链接到此函数

loadDialog(This, Parent, Name)

查看源代码
-spec loadDialog(This, Parent, Name) -> wxDialog:wxDialog()
                    when
                        This :: wxXmlResource(),
                        Parent :: wxWindow:wxWindow(),
                        Name :: unicode:chardata().

加载对话框。

parent 指向父窗口(如果有)。

链接到此函数

loadDialog(This, Dlg, Parent, Name)

查看源代码
-spec loadDialog(This, Dlg, Parent, Name) -> boolean()
                    when
                        This :: wxXmlResource(),
                        Dlg :: wxDialog:wxDialog(),
                        Parent :: wxWindow:wxWindow(),
                        Name :: unicode:chardata().

加载对话框。

parent 指向父窗口(如果有)。

此形式用于完成已存在实例的创建(这样做的主要原因是您可能希望将派生类与新的事件表一起使用)。示例

链接到此函数

loadFrame(This, Parent, Name)

查看源代码
-spec loadFrame(This, Parent, Name) -> wxFrame:wxFrame()
                   when
                       This :: wxXmlResource(),
                       Parent :: wxWindow:wxWindow(),
                       Name :: unicode:chardata().

从资源加载框架。

parent 指向父窗口(如果有)。

链接到此函数

loadFrame(This, Frame, Parent, Name)

查看源代码
-spec loadFrame(This, Frame, Parent, Name) -> boolean()
                   when
                       This :: wxXmlResource(),
                       Frame :: wxFrame:wxFrame(),
                       Parent :: wxWindow:wxWindow(),
                       Name :: unicode:chardata().

将框架的内容加载到现有的 wxFrame 上。

此形式用于完成已存在实例的创建(这样做的主要原因是您可能希望将派生类与新的事件表一起使用)。

-spec loadIcon(This, Name) -> wxIcon:wxIcon() when This :: wxXmlResource(), Name :: unicode:chardata().

从文件加载图标资源。

-spec loadMenu(This, Name) -> wxMenu:wxMenu() when This :: wxXmlResource(), Name :: unicode:chardata().

从资源加载菜单。

失败时返回 NULL。

链接到此函数

loadMenuBar(This, Name)

查看源代码
-spec loadMenuBar(This, Name) -> wxMenuBar:wxMenuBar()
                     when This :: wxXmlResource(), Name :: unicode:chardata().
链接到此函数

loadMenuBar(This, Parent, Name)

查看源代码
-spec loadMenuBar(This, Parent, Name) -> wxMenuBar:wxMenuBar()
                     when
                         This :: wxXmlResource(),
                         Parent :: wxWindow:wxWindow(),
                         Name :: unicode:chardata().

从资源加载菜单栏。

失败时返回 NULL。

链接到此函数

loadPanel(This, Parent, Name)

查看源代码
-spec loadPanel(This, Parent, Name) -> wxPanel:wxPanel()
                   when
                       This :: wxXmlResource(),
                       Parent :: wxWindow:wxWindow(),
                       Name :: unicode:chardata().

加载面板。

parent 指向父窗口。

链接到此函数

loadPanel(This, Panel, Parent, Name)

查看源代码
-spec loadPanel(This, Panel, Parent, Name) -> boolean()
                   when
                       This :: wxXmlResource(),
                       Panel :: wxPanel:wxPanel(),
                       Parent :: wxWindow:wxWindow(),
                       Name :: unicode:chardata().

加载面板。

parent 指向父窗口。此形式用于完成已存在实例的创建。

链接到此函数

loadToolBar(This, Parent, Name)

查看源代码
-spec loadToolBar(This, Parent, Name) -> wxToolBar:wxToolBar()
                     when
                         This :: wxXmlResource(),
                         Parent :: wxWindow:wxWindow(),
                         Name :: unicode:chardata().

加载工具栏。

-spec new() -> wxXmlResource().

等效于 new([])

-spec new([Option]) -> wxXmlResource() when Option :: {flags, integer()} | {domain, unicode:chardata()}.

构造函数。

链接到此函数

new(Filemask, Options)

查看源代码
-spec new(Filemask, [Option]) -> wxXmlResource()
             when
                 Filemask :: unicode:chardata(),
                 Option :: {flags, integer()} | {domain, unicode:chardata()}.

构造函数。

-spec set(Res) -> wxXmlResource() when Res :: wxXmlResource().

设置全局资源对象并返回指向上一个对象的指针(可能为 NULL)。

-spec setFlags(This, Flags) -> ok when This :: wxXmlResource(), Flags :: integer().

设置标志(?wxXmlResourceFlags 枚举值的位列表)。

链接到此函数

unload(This, Filename)

查看源代码
-spec unload(This, Filename) -> boolean() when This :: wxXmlResource(), Filename :: unicode:chardata().

此函数卸载先前由 load/2 加载的资源。

如果资源已成功卸载,则返回 true;如果未在已加载资源列表中找到资源,则返回 false。

链接到此函数

xrcctrl(Window, Name, Type)

查看源代码
-spec xrcctrl(Window, Name, Type) -> wx:wx_object()
                 when Window :: wxWindow:wxWindow(), Name :: string(), Type :: atom().