问题标签 [wxhaskell]
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.
haskell - 动态添加和删除小部件
我想在 wxHaskell 应用程序中动态添加和删除小部件。
我的问题是:
窗口可以调整大小,但是当它手动变大时,单击“更多”按钮会显示它快速闪回到最小大小。如果没有
windowReLayout
调用,窗口根本不会改变大小。windowRemoveChild
看起来像我想要的,但它不是从 WXCore 导出的,所以我猜它不打算在这一层使用(编辑:我也没有找到一种方法来使用它而不会导致程序崩溃,因为它试图绘画到一个不存在的窗口中,即使先将其从布局中删除,然后将其从其父窗口中删除)。但我找不到替代方案。这个答案建议简单地隐藏小部件,但在我的真实应用程序中,我使用的是一个复杂的自定义小部件,我希望收集垃圾。创建小部件时已经定义了父/子关系,我可以为布局再次这样做吗?例如,我是否可以为面板提供一个
row 5
自动应用于其所有子级的布局,而不必为每次更改重新构建布局?(如果我只是从布局中删除子级但不从其父级中删除它们,它们将简单地定位在原点,这是由一种默认布局控制的吗?)
这是一个最小的示例,显示了我当前如何添加小部件,以及我如何尝试删除它们。
haskell - 如何使用 wxHaskell 在笔记本更改页面事件时获取新选择的页面索引?
下面是一个启动 wxHaskell 笔记本的 Haskell 程序。
它可以工作,除了我无法处理页面更改事件以获取新选择页面的索引。我得到了前一个(请参阅下面代码中的注释“问题”)。
在C wxNotebook 类参考文档(请参阅 getSelection 部分)以及 wxBookCtrlEvent 类参考文档的“详细说明”部分中 对此行为有警告,但我完全不明白如何使用它。
谁能告诉我一些笔记本的工作代码,当用户选择新页面时(通过单击其标题),可以获得新页面索引?
第二个问题:我不明白 0 旁边的论点是什么--???。
先感谢您!
haskell - 以编程方式更改 wxhaskell 布局
我想在事件发生后切换布局(即单击按钮)。所以我设置了新的布局并重新绘制了面板,但布局没有改变。(只有在我手动调整框架大小后才会这样做。)缺少什么神奇的酱汁?谢谢你的协助!
user-interface - 在 wxHaskell 中使标签可选
我正在 wxHaskell 中编写一个实用程序应用程序,该应用程序的用户经常需要从应用程序的输出复制并粘贴到他们计算机上的其他程序中。程序的输出基本上是文本的,并显示在一个staticText
小部件中。
如何使用户能够选择此staticText
控件中的文本?我在 wxHaskell 文档中找不到任何使不可编辑文本可选的属性。
haskell - wxHaskell:将 Data.ByteString 转换为 Image
我有一些将图像表示为的原始数据Data.ByteString
。wxHaskell 中有没有办法将其转换为图像/位图?
该原始数据可以是像 PNG/JPG/GIF 这样的图像,因此它将以“PNG 等”这样的字节序列开头。
我尝试使用“gd-3000”来创建它,但我无法使用 wx 使该库的输出“兼容”。
haskell - 使用 wxHaskell 显示完整图像
我正在使用 wxHaskell 在窗口中显示完整图像。我的代码是:
无论如何,当应用程序运行时,什么都不会显示(甚至窗口的边框也不显示)。我怎样才能让它工作?
haskell - 构建静态链接的 wxHaskell 应用程序时出现链接器错误
我正在尝试使用此ghc -static -optl-static
标志静态链接 wxHaskell Windows 应用程序。但 ld.exe 返回链接器错误
c:/程序文件/haskell平台/2014.2.0.0/mingw/bin/../lib/gcc/x86_64-w64-mingw32/4.6.3/../../../../x86_64-w64- mingw32/bin/ld.exe:找不到-lwxc collect2:ld返回1退出状态
我似乎在我的系统中的任何地方都找不到 lwxc。有什么我可以做的吗?
编辑:我有 libwxc.a
E:\wxhaskell\wxc\libwxc.a
haskell - Haskell cabal 安装 wx:缺少 C 库 wx_gtk2u_webview-3.0
我正在尝试安装 wxcabal install wx
但我有以下文件/usr/lib
:
我也尝试过cabal install --extra-lib-dirs=/usr/lib/ wx
,但无济于事。
我还尝试了cabal install wx Missing C library中的所有建议
我在 archlinux 上,我有 wxgtk-3.0 和 wxgtk-2.8 multilib 和普通版本。我也尝试重新安装它们。
haskell - wxHaskell 中的 wxWebView
我试图在我的基于 wxHaskell 的 Mac 应用程序中显示一个网页。我尝试使用HtmlWindow
,这是非常有限的。根据 wxWidgets 的文档,我必须使用能够处理 CSS 和 JS 的 wxWebView。
来自http://docs.wxwidgets.org/trunk/classwx_html_window.html
如果您想要完整的 HTML/CSS 支持以及 Javascript 引擎,请参阅 wxWebView。
正是我需要的!Hoverer 我没有在 wxHaskell 中找到任何关于 wxWebView 的提及。而且,这也是奇迹,谷歌对此保持沉默。这让我觉得,我做错了什么。有没有办法使用 wxHaskell 显示到达(具有 HTML/CSS/JS)页面?人们如何做到这一点?
我已经从 brew 安装了 wxWidgets 3.0.2:
和来自 cabal 的 wxHaskell 0.92
multithreading - wxHaskell 上的多线程
有没有人在wxHaskell中安全地使用多线程?我正在尝试确定wxHaskell程序是否可以使用多核来进行后台处理。
下面的链接解释了如何在Gtk2Hs中安全地执行此操作:
关键似乎是只从主线程进行 GUI 库调用,这始终是操作系统绑定的,因此其他线程将需要找到一种方法来请求主线程为它们进行 GUI 库调用,而不是执行直接GUI库调用自己。在Gtk2Hs 中,这是使用postGUIAsync或postGUISync完成的,但我没有在网上找到任何关于如何在wxHaskell中执行此操作的信息。
wxHaskell中是否有任何等效的postGUI,或者我是否需要自己滚动,假设这是可能的?
另外,如果我按照上面描述的Gtk2Hs多线程的整体方法,我可以安全地在wxHaskell中进行多线程吗?