问题标签 [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.

0 投票
1 回答
2088 浏览

haskell - putStrLn 不打印到控制台

我正在试验 wxHaskell。我无法在 ghci 下运行应用程序,所以我必须使用应用程序来测试它。我想用 println 调试来测试程序。但是,putStrLn 似乎在 GUI 中不起作用:

如果我注释掉 start helloGui,一切都打印得很好。但是,如果我返回它,则不会打印任何内容,但会显示窗口。这里有什么问题?

0 投票
1 回答
1162 浏览

haskell - Haskell 中的 GUI 编程 - Ubuntu 上的安装问题

是否有仍然是最新的 GUI 包?

我今天尝试同时安装 wxHaskell 和 gtk2hs,但都因我无法解决的依赖项而失败(wxHaskell 找不到一些 wxWidget 库,并且在尝试 gade 教程时 gtk2hs 在我安装的缺少的 pkg-config libglade2-0 上失败)。

我想这只是我不了解 linux/cabal/package 安装的一些问题,但是是否有最新的教程如何开始(安装)一些用于 Haskell 的 GUI 库?

以下是错误:

这真的让我很沮丧-也许有人可以在这里帮助我-谢谢!

0 投票
2 回答
110 浏览

haskell - wxHaskell 库中的嵌套 Lambda

我一直在试图弄清楚如何使 staticText 元素调整大小以适应 wxHaskell 的内容。据我所知,这是 wxWidgets 中的默认行为,但 wxHaskell 包装器专门禁用了此行为。但是,创建新元素的库代码让我很困惑。谁能解释这段代码的作用?

我知道feed2 x y f = f x y,并且 initialWindow 的类型签名是

并且 initialText 的签名是

但我就是无法理解所有的 lambdas。

0 投票
0 回答
146 浏览

user-interface - wxHaskell 和 Reactive-Banana staticText 在文本更改时不更新大小

我正在尝试构建一个简单的 UI 作为学习 wxHaskell 和 Reactive Banana 的练习,但我在尝试解决一个看似简单的问题时遇到了困难。具体来说,我想在标签的文本更新时调整窗口大小以适应标签,使其始终适合文本。我尝试使用 来完成此操作windowReLayoutMinimal,但这出乎意料地导致窗口在文本溢出时无法调整大小,并且在手动调整大小时窗口在其原始大小和新大小之间闪烁(即用句柄拉伸它角落)。据我所知,StaticText当文本更改时,项目的大小无法更新。有没有办法强制项目重新计算其最小尺寸?我的代码如下所示:

0 投票
1 回答
1000 浏览

haskell - Wxhaskell - wxcore 由于构建阶段而失败(g++ 错误)

我正在尝试构建 wxhaskell,似乎有很多麻烦,我可以弄清楚在某些情况下该怎么做,但我现在卡住了。

我正在使用 wxwidgets-2.8 / wxhaskell-0.11.1.2,出现的错误是:

有谁知道如何解决这个问题?提前致谢。

编辑:完整的 g++ 命令在这里:

http://pastebin.com/TbrQhWEY

0 投票
2 回答
391 浏览

haskell - 无法让 wxHaskell 在 Mac 上的 ghci 中工作

我正在尝试使用function运行一个示例EnableGUI

这是我得到的,而不是工作程序:

当我编译macosx-app它时,它运行得相当好,但是,出于显而易见的原因,我真的希望它能够从ghci.

我能做些什么?谷歌没有透露NSUndoManager与 Haskell 一起使用的神秘问题。:(

0 投票
2 回答
752 浏览

haskell - wxHaskell:初始帧大小太小

在安装了 WxHaskell 和 gtk2hs 之后,我正在玩弄它们中的哪一个。对于 WxHaskell,我正在研究haskell.org 上 WxHaskell的文档。以下第一个示例来自“快速入门”部分:

禁止

和类似以下的行用于不同的图像文件格式

代码编译良好并加载到 GHCi 中。但是,运行时出现的窗口的高度为零,只有窗口的顶部栏可见,无需手动调整窗口大小以包含按钮。这在编译和加载到 GHCi 时都会发生。在 GHCi 中,当执行 main 秒和任何后续时间时,高度将是正确的。如果我关闭并重新启动 GHCi 会话,它将再次“平坦”,并且在第一次调用 main 时不包括按钮,但在任何后续调用中都会更正。当编译代码并在 GHCi 之外运行时,窗口总是平坦的。

这是一个错误还是教程已过时或我缺少其他东西?

0 投票
0 回答
110 浏览

haskell - wxHaskell 程序在 Windows XP 上启动很慢

我写了一个 wxHaskell 程序,它在 Mac 上表现得非常好。但是经过很多麻烦并在 Windows XP 上安装了 wxHaskell,我的程序需要几分钟才能启动。目前,wx 库是共享的(DLL)。有谁知道是什么问题?

0 投票
0 回答
231 浏览

haskell - 模型和 GUI IO (Wx) 的分离状态:堆栈还是 FRP?

对于我的图表工具,我想保持核心模型的代码与 GUI 隔离。

在下面的示例中,“状态”是用 传递的vDiag,它是一个Tvar。这是 wx 中的设计决策。现在,对于我的图表工具,我希望将核心模型“存储”在一个fgl图表中(其中包含复杂类型),并且wx只给出一个视图;比如说在这个例子中,绘画时读取访问的点列表,以及单击、拖动等时要写入的一些功能......。我首先想到了一些 Monad 堆栈,但即使将 StateT 和来自 wx 的 IO 组合起来看起来也并不简单,因为 io 动作遍布在回调的代码中(点击、绘画等)。感觉就像在堆栈底部有 IO 不再适合了。

那么你如何传递一个状态,或者它不是要走的路?(我直觉这是经典。RFP 是这样开始的吗?)

(在代码中,当点击时绘制红色圆圈,点列表在 a 中传递Tvar vDiag。我在等效状态访问器所在的位置标记了“--fgl”。并设置了一个基本的 fgl 测试图访问器说明。我想提出一个状态)(我最初试图在没有 FRP 的情况下试一试 - 反应香蕉,以了解问题,但我想我可能已经成功了 ;-)

0 投票
1 回答
807 浏览

haskell - wx haskell 拖放示例

我正在寻找一个 wx haskell 拖放示例。我还没有找到。

有可用的吗?或提示?

至今:

  • 我可以看到一个on drag事件(但没有“on drop”)
  • 鼠标只是给出一个left up目标
  • 我看到一些评论,我应该在 object 上附加一个放置目标,但我看不到它是如何被调用的:

    Graphics.UI.WXCore.DragAndDrop

    大号 51

    -- | 创建'DropSource'。然后“dragAndDrop”用这个“DataObject”替换目标的“DataObject”。

    dropSource::DataObject a -> Window b -> IO (DropSource())

  • 我看不到 Graphics.UI.WXCore.DragAndDrop 上方的 WX 层在哪里

  • 我猜这(太)旧了:[0]:http ://bb10.com/haskell-wxhaskell-general/2007-08/msg00035.html

反正现在很模糊……


编辑:这就是我现在的立场:在拖动时不会被激活,所以也没有 dragAndDrop(在 xinput 中的鼠标上只是为了看看发生了什么)(dragger是我从 [O] 得到的),但我没有从中获取事件)