首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Statusbar中的断线

Statusbar中的断线
EN

Stack Overflow用户
提问于 2014-06-04 23:01:53
回答 1查看 268关注 0票数 1

这里有一个使用GTK状态栏的程序,我希望在其中包含多行输出。当我尝试将多行输出到其中时,我会得到象形文字,如下所示:

我希望它能像在emacs里一样工作:

经过一番搜索,我发现了layoutSetSingleParagraphMode,它似乎完全是我想做的。对于大多数小部件来说,默认设置是错误的,而且我们不会自己在任何地方设置它,这使我认为Statusbar默认为单个段落模式。

我的问题是,我不知道如何从Statusbar转到PangoLayout,在此基础上可以使用这个函数。

我最近的发现是找到widgetGetPangoContext,然后让我用layoutEmpty获取PangoLayout,但顾名思义,这似乎只是创建了一个单独的PangoLayout,它在操作时不影响状态栏:推或弹出文本的行为与之前一样。

我错过了什么功能吗?不可否认,gtk2hs在类型类的海洋中游动,以模拟OO,这无助于生成文档的可读性。这似乎应该是一项简单的任务。

如果我们从未打算从现有的小部件中提取PangoLayout,那么我如何才能实现我想要的呢?在Statusbar创建时,似乎没有选择选择段落模式。

有关此项目的GitHub问题,请参见GitHub。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-06 06:46:52

请试试这个:

使用statusbarGetMessageArea获取状态栏文本标签所在的Gtk.Box

然后获取带有containerGetChildren <status bar message area>的文本标签。此函数返回一个只有一个元素的Gtk.Widget列表,即标签。

将小部件转换为带有castToLabel的标签。

现在您可以使用labelSetSingleLineMode <label> False设置多行模式。

labelSetTextlabelSetMarkup设置标签的内容。

我已经成功地尝试过了(使用GTK2的Hackage中的GTK0.12.5,还没有在GTK3上尝试过)。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24049015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档