问题标签 [wxformbuilder]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 使用 wxWidgets 和 FormBuilder 绘制区域
我的任务是为某些工具和打印六边形地图创建客户端(最好可以为 Windows 和 Linux 构建它)。
我为此选择了wxWidgets。我下载了 WxFormBuilder,它非常有助于为它们创建表单和代码。
但我必须以这种形式在某处绘制六边形地图。而且我没有从仪表板上找到我必须使用的项目。我可以在为我自动创建的源中手动添加类似wxPanel的东西,但这是个坏主意,因为在wxFormBuilder每次更改后,我都需要手动再次解析结果。
我是绘画和图形的新手,但相信在wxFormBuilder中必须有解决方案,不是吗?
python - 如何编写 wxPython textCtrl 焦点事件
当用户单击 textCtrl 时,我试图触发一行代码。最终目标是在单击框时突出显示框的内容。我知道 wx.EVT_SET_FOCUS 可以做到这一点,但它要么有问题,要么我执行错误。这是我的代码:
这段代码能够在我想要的时候成功触发 highlightText,但由于某种原因,光标从 textCtrl 中移除,导致用户无法选择他的位置、突出显示或退格。任何建议,将不胜感激。作为旁注,有没有办法在 wxFormBuilder 中做到这一点?我使用它构建了我的应用程序,但无法添加焦点事件。它提供的唯一焦点事件似乎是整个窗口。
编辑 9/19/14:Mike,这是我自动生成的 wxFormBuilder 代码,位于gui.py
:
...这是我写的事件处理程序
该事件工作正常(因为在我需要时打印测试),但我无法突出显示文本,也看不到我的光标。
python - Python:变量仅在存在打印语句时才有效
我有一个非常奇怪的问题困扰了我大约过去一天。
正在发生的事情是有一个main.py
初始化我的mainframe1
类的主要 Python 文件,它引用gui.py
了它的所有 wxpython 代码来调出窗口。该文件只是事件处理程序。checkClick1
当我单击窗口中的复选框(我知道的创意名称)时运行,这反过来又启动了checkAdvance1
.
除一部分外,程序中一切正常。我的eID1
变量在 中工作得很好__init__
,并textCtrl3
显示它。但是,当我尝试在 中再次使用它时checkAdvance1
,程序会挂起。
为了测试它,我eID1
用两个测试打印语句包围了打印语句。仅test1
打印,并且没有给出错误代码,程序只是挂起。更令人困惑的是,当我print eID1
在函数中添加一条语句__init__
(现在已被注释掉)时,程序运行得很好!
我不确定 print 语句会如何影响变量功能,但它正在发生。但是,将打印语句放入修复它似乎是一种忽略实际问题的劣质解决方法。此外,注释掉的eID1
声明只是一个示例,向您展示程序运行时变量的内容是什么样的。
编辑:我想出了一个我不完全满意的解决方法,但它比添加打印更好。如果我创建另一个变量,我可以将其设置为 empID1 的字符串翻译,如下所示:empID1 = str(eID1)
. 然后我可以稍后引用这个值来代替 eID1。但是,这仍然不适合我,因为根据我所知道和研究的一切,我的原始代码应该可以工作。这让我觉得幕后发生了一些不好的事情,以后可能会回来咬我。
python - Python编写代码以获得最活跃的客户和最少的客户
我们被要求设计一个 GUI 来计算最活跃和最不活跃的客户。底部有两个按钮,用于计算最活跃和最不活跃的客户。还有一个结果区域,将显示按下两个按钮的结果。
有一个列表框,下面有两个按钮。名称将显示在列表框中。例如,当我在第一个 textCtrl 中输入“sam”时,然后单击添加客户按钮。Sam 将出现在列表框中。在您多次输入不同或相同的名称后。带有名称的列表是列表框。例如,列表框中有三个“sam”和两个“justin”。当我单击“最活跃的按钮”时,名称 sam 将出现在结果框中。当我单击最少活动按钮时,名称 justin 将出现在结果框中。
我成功定义了添加客户按钮,但我不知道如何定义计算最活跃和最不活跃客户的按钮。有人告诉我我需要使用计数功能,但我不知道该怎么做。
这是我到目前为止得到的:
有人可以帮助我下一步吗?谢谢!PS 结果框的名字是 m_textCtrl2 列表框的名字是 m_listbox1
python - wxFormbuilder/Python 中的股票图表
我在 wxFormbuilder 下面有我的应用程序:
在以红色边框突出显示的区域中,我希望能够在那里展示一个股票图表。我了解 matplotlib 导入可以处理股票图表,但是如何将该图表绑定到我的应用程序中的灰色面板?
python - 如何在 python 中将 wxListBox 条目写入 .txt 文件
我正在尝试对 wxFormBuilder 接口进行编程,以将 wxListBox 中的文本写入文本文件。我当前的代码:
目前,此代码仅保存列表框中的最后一个条目,而不是所有条目。我也无法将文本文件中的列表导入 wxListBox。使用我拥有的代码,我收到“TypeError:需要字符串或 Unicode 类型”错误:
python - 在程序运行开始时填充 wxChoice | Python
一旦我的程序运行,我希望我的 wxChoice 被我指定的列表中的项目填充。我正在使用 wxFormBuilder 来处理我的程序的 GUI 元素。
我的代码:
此事件在用户单击下拉 (wxChoice) 菜单时激活,并在每次单击时重新填充。
有没有一种方法可以在程序初始打开/运行时仅填充一次 wxChoice?
我已将此代码放置在创建 wxChoice 的位置。但是,我现在在第 44 行遇到“Unndent 与任何外部缩进级别不匹配”。我该如何解决这个问题?
wxformbuilder - wxformbuilder 和 unicode 标签
有没有办法将 Unicode 字符转换为 wxFormBuilder 生成的标签代码?
例如,要获取 Angstrom 字符,生成的字符串应为u"\u212b"
.
我尝试\u212b
在标签属性字段中输入,但结果字符串显示为u"u212b"
. 所以我尝试转义反斜杠,\\u212b
但这给了我u"\\u212b"
.
我正在使用 wxFormBuilder v3.5 - beta。生成 Python 代码,尽管 C++ 代码显示相同的行为。
user-interface - wxPython: access sizer of GUI generated by wxFormBuilder and replace child
I want to buid my applications under the idea of an MVC, with sepparate GUI and controller. In addition, I have a workmate much better than me in graphical tasks, and we want to distribute the work: he build the graphical part with wxFormBuilder and I build the "machinery" of the application.
When I have the GUI generated, I want substitute some elements that wxFormbuilder cannot manage: by example, the wxObjectListView. My idea is create a GUI with a normal wxListBox, import it with the main program, and substitute it with an wxObjectListView. I don't want to modify directly the generated code by wxFormBuilder, because I want to maintain the backwards compatibility with the GUI editor.
The problem and the question are: from the main program that imports the GUI, how can I access the sizer that contains the list, delete and substitute by a ObjectListView? Something like sizer.Delete(list) and then sizer.Add(olv)...
Here you are an example:
The GUI code generated by wxFormBuilder: a Frame with a list and a button.
And here is the main code, that imports the graphical class.
When I attempt to access the Frame children, I only see the "final" objects, not the Sizer.
Maybe the GUI must have another structure if I want make it his elements accesibles, but I have no idea how to make it. I have tried make two levels of sizers, and the final result is the same: I can access the final elements, not the sizers.
python - 12:52:27:调试:..\..\include\wx/msw/private.h(697):“UnregisterClass”失败,错误为 0x00000584(类仍有打开的窗口。)
使用 wxformbuilder 为 python 程序构建 gui 时;经过多次编辑和重新构建后,我收到以下错误:
12:52:27:调试:....\include\wx/msw/private.h(697):“UnregisterClass”失败,错误为 0x00000584(类仍有打开的窗口。)。
我做错了什么,从哪里开始排除故障/如何解决?