如何使用GTK开发类似Eclipse的界面?

2024-03-29

我想使用 GTKMM 编写一个桌面应用程序。我希望界面由不同的面板组成,就像在 Eclipse 中一样,您有项目资源管理器、控制台、属性等。您应该能够拖动面板来更改其位置、关闭它们并弹出它们(不确定是否可以弹出) Eclipse 中的面板,但您可以在 Visual Studio 中完成)。

我在这里使用“面板”一词,因为我不确定正确的术语是什么。我想有些人称之为可停靠窗口。

关于如何在 GTKMM 中实现这一点的任何指示?


该术语是“对接”小部件,GDL库 https://developer.gnome.org/gdl/stable/是最简单的开始方法。您可能已经在 Anjuta 和 Inkscape 等应用程序中看到了 GDL 的实际应用。该文档不是那么好,但是,源代码包含一个示例应用程序,一旦您开始使用它,它就不那么难了。

基本上,您将小部件添加到DockItem以及那些对Dock。你放了一个DockBar您的应用程序中可以最小化停靠项目的某个位置。您可以将扩展坞“布局”保存并加载到 XML 文件中,这样用户就不必在每次启动应用程序时重新排列扩展坞项目。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用GTK开发类似Eclipse的界面? 的相关文章

  • JSON 编码/解码 GTK 枚举

    我必须将自定义 GTK 元素的各种属性保存到文件中以供将来使用 并由于简单的格式和字典嵌套而决定使用 JSON 许多属性都是 GTK 枚举 例如gtk PAGE ORIENTATION PORTRAIT gtk ANCHOR CENTER
  • PyGObject GTK+ 3 - 文档?

    PyGObject 似乎没有真正的文档 本教程 http python gtk 3 tutorial readthedocs org en latest index html已经很接近了 我整个早上都在努力寻找对被接受的论点的描述Gtk W
  • 如何在 MS Windows 上加载 GTK Sharp 主题

    我正在 MS Windows 上使用 Xamarin Studio 5 4 编写 GTK Sharp v2 12 应用程序 安装的Mono版本是3 2 3 但我使用 Net工具链进行编译 因为Xamarin不允许我使用Mono工具链进行编译
  • 通过 pip 安装 PyGObject 时缺少文件 msvc_recommended_pragmas.h

    我尝试通过 pip 安装 PyGObject 但失败并出现给定错误 Building wheels for collected packages pygobject Building wheel for pygobject PEP 517
  • GTK焦点链

    Currently I m working on a pyGTK3 application for which I want to set the focus chain When using the code below simplifi
  • Gtk-CRITICAL **:IA__gtk_widget_style_get:断言“GTK_IS_WIDGET(小部件)”失败

    在静态构建我的 qt 应用程序之后 configure static debug and release confirm license nomake demos nomake examples nomake tools 它工作正常 但我收
  • Python Gtk.Entry 占位符文本

    我有一个登录窗口 有两个 gtk Entry 对象 一个用于用户名 一个用于密码 我如何向条目添加一些幽灵文本 因此条目中写有 用户名 但如果您单击内部 文本就会消失 从 Gtk 3 2 开始 可以设置占位符文本 http develope
  • 菜单栏隐藏时加速器停止响应

    我有一个基于空地的 gtk3 用户界面 并且我为几个菜单项设置了加速器字段 我不确定 GtkBuilder 在加载林间空地文件时到底在幕后做了什么 使用全局 GtkAccelGroup 但最终结果是 当我隐藏菜单栏时 加速器快捷键停止工作
  • 为什么 DirectFB 没有在 GNU/Linux 中得到更广泛的应用?是否存在 X11 中不存在的严重限制?

    据我了解 DirectFB为多种显卡提供硬件加速 此外 它比 X11 更小 更快 并且占用的内存更少 那么 为什么它没有比现在更主流呢 我真正不确定的是 常见的 GTK Qt 程序是否需要移植到它 在 DirectFB 网站上 有一个将 F
  • 两个具有共享滚动条的 Gtk TextView 小部件

    我想要两个并排的 TextView 小部件 它们与单个滚动条一起滚动 我可以将两个 TextView 小部件放入 Hbox 然后将它们添加到 Viewport 然后添加到 ScrolledWindow 然而 这不会按我想要的方式工作 从滚动
  • PyGObject 中的 TreeView 拖放:未调用拖拽数据删除?

    我正在研究如何在 PyGObject 的 TreeView 中进行拖放的示例 我有一些不明白的事情 为什么是drag data delete函数从未被调用 这是独立的示例 from gi repository import Gtk Gdk
  • 如何从 Python 将一项添加到 GTK 的“最近使用”文件列表中?

    我正在尝试从 Ubuntu 上的 Python 3 添加到 最近使用的 文件列表 我能够成功read最近使用的文件列表如下 from gi repository import Gtk recent mgr Gtk RecentManager
  • meld - gi.glib.GError:主题中不存在图标“meld-change-apply-right”。安装有什么问题吗?

    我已经成功安装了 meld 3 14 2 和所有依赖包 通过从源代码编译每个包 并且所有包都安装在 NFS 共享上 prefix meld对于融合工具 prefix meld deps对于依赖项 最后 我调用了该工具 我可以看到 GUI 但
  • GTK 窗口运动动画?

    我想自动在屏幕上移动我的 GTK WINDOW 目前我将它置于绘制 移动循环中 但这非常不稳定 我对 GTK 编程 以及一般的 gui 编程 非常陌生 我缺少什么 您还没有说您希望窗口遵循什么样的路径 如果路径是时间的一些简单函数 也就是说
  • 如何针对 gtk 3 库运行 javaFx 应用程序?

    如何强制 javaFx 应用程序使用 gtk3 库 我知道SWT允许设置SWT GTK3 1用于此目的的环境变量 javaFx 是否有类似的可能性 解决方法 新功能 8087516 对 Linux 上的 GTK 3 有条件支持 https
  • GTK+ CSS 一键式

    如何在 GTK 中为一个按钮设置颜色 GtkButton button8 border radius 20 border width 1 1 1 1 font Sans 16 color black background image gtk
  • 升级到 ubuntu 11.10 unity 后,monodevelop 中的 Gtk# 不再工作

    我有一些带有 GTK 用户界面的 monodevelop 程序 可以在 ubuntu 11 04 中顺利运行 无需统一 我已经统一升级到ubuntu 11 10 现在我收到以下错误 找不到类型或命名空间名称 Gtk 您是否缺少程序集引用 事
  • 如何使用 PyGTK 和 PyCairo 在窗口中获得透明背景?

    我一直在努力使用 PyGTK 创建一个没有装饰和透明背景的窗口 然后我会用 Cairo 绘制窗口的内容 但我无法让它发挥作用 我尝试了很多不同的方法 但都失败了 这是其中之一 usr bin env python import pygtk
  • 使用 GTK 构建 GUI#

    我可能需要使用 C 和 Mono 构建 GTK GUI 如果我理解正确的话 这意味着我有3个选择 编写 C 代码来调用 GTK 包装器类 GUI 是 在代码中 使用 MonoDevelop GUI 设计器 这使用 stetic 标记构建了一
  • 在 Ubuntu 上用 C 项目编译和链接 GTK 3

    我相信这不是重复的问题 在发布此问题之前我已经看过所有问题 答案 我想我这里的情况有所不同 我使用Ubuntu 12 04并下载GTK 2 和 3 我从 GNOME 网站复制了一个简单的 GTK 源代码 但是当我在终端中使用这个命令时 gc

随机推荐

  • 电池的最佳使用

    作为一名程序员 我可以采取哪些措施来确保我的应用程序不会占用大量资源并耗尽电池 根据您正在编写的应用程序 其中一些可能适用于您 不要使用过多的网络调用 尝试维护不经常更改的数据缓存 并且仅在上次刷新 10 秒后运行完全刷新 阻止它们向服务器
  • SQLite Swift 中有多少种方式进行 CRUD 操作?

    当我在 SQLite 中进行 CRUD 操作时 我很困惑 因为有人对我说你可以使用 FMDB 库进行 CRUD 操作 有人说 GRDB 所以 我的问题是 在 SQLite 中有多少种方法可以进行 CRUD 操作 哪种方法是正确的 我认为 G
  • 如何在 Jquery 验证中处理 html 元素 id/name 中的特殊字符?

    我有一个 HTML 表单 它在 ids 中使用特殊字符 该表单使用 JQuery 验证插件来验证用户输入 具体来说 id 包括 GUID 以下是示例代码
  • 在 Eclipse 中,Source -> Format 在“Maven Pom Editor”中被禁用

    当打开pom xml在 Eclipse 中使用 Maven Pom Editor 并切换到选项卡pom xml我无法格式化该文件 Hitting Ctrl Shift F在完全未格式化的文件中不会执行任何操作 通过上下文菜单时Source
  • Python 中的递归、记忆和可变默认参数

    Base 的意思是不只使用lru cache 所有这些都 足够快 我并不是在寻找最快的算法 但时间安排让我感到惊讶 所以我希望我能了解一些有关 Python 如何 工作 的知识 简单循环 尾递归 def fibonacci n a b 0
  • Flask 应用偶尔挂起

    我一直在开发一个 Flask 应用程序 它使用 Twilio 处理 SMS 消息 将它们存储在数据库中 并通过 JSONP GET 请求提供对前端的访问 我已经使用supervisord对其进行了守护进程 这似乎工作得很好 但每隔几天它就会
  • Erlang / Golang 端口示例中的缓冲区大小

    我有一个粗略的 Erlang to Golang 端口示例 将数据从 Erlang 传递到 Golang 并回显响应 问题是我可以传输的数据量似乎仅限于 2 8 字节 见下文 我认为问题可能出在 Golang 方面 没有创建足够大的缓冲区
  • JavaScript 中的继承和 Super

    我正在学习 JavaScript 的第三天 我遇到了这段代码 class B constructor name this name name printn return this name class A extends B constru
  • ajaxForm 错误回调内的表单对象

    我试图在 ajaxForm 的错误方法中访问我的表单对象 foo ajaxForm error function where s my foo object error 可以接受 3 个参数 但它们都不是表单对象 这也返回 url 但同样没
  • 为什么 CSS Grid 的自动填充属性在列方向上不起作用

    我正在练习用行自动填充属性 但是 它并没有按照我的意愿进行 我想创建具有高度的行minmax 140px 200px 而是获取一行高度为 200px 的行 其余行为 18px 为什么会发生这种情况 body html height 100
  • 使用ajax上传文件到远程服务器

    我对服务器端没有任何控制权 是否可以在 Iframe 中上传并加载远程服务器给出的结果 请分享一些代码 谢谢 使用名称声明 iframe 并在表单元素中定位该名称
  • 调整大小和滚动问题(JS/HTML)

    有两个容器 第一个是小视口 第二个是巨大的工作区 因此 用户滚动视口以在工作区中移动 我想通过 CSS 属性实现放大 缩小功能tranform 但是在这个过程中我遇到了一个难题 并没有找到精确的解决方案 问题是 当用户放大 缩小时 工作区中
  • 带有 @MappedSuperclass 的 Hibernate TABLE_PER_CLASS 不会创建 UNION 查询

    我正在尝试创建一系列对象 这些对象全部存储在单独的表中 但所有这些表上都有一组共同的字段 我希望 Hibernate 对所有这些表进行 UNION 但不包括超类作为表 当我用以下方式注释超类时 MappedSuperclass Inheri
  • 插入、删除、最大值 O(1)

    有人能告诉我哪种数据结构支持 O 1 的插入 删除 最大操作吗 这是一个经典的面试问题 通常是这样提出的 设计一个类似堆栈的数据结构 在 O 1 时间内执行压入 弹出和最小 或最大 操作 没有空间限制 答案是 您使用两个堆栈 主堆栈和最小
  • 在 n 维数组上使用 scipy interpn 和 meshgrid

    我正在尝试翻译大型 4D 数组的 Matlab interpn 插值 但 Matlab 和 Python 之间的公式存在显着差异 几年前有一个很好的问题 答案here https stackoverflow com questions 39
  • 如何删除R中第n个分隔符之后的所有内容?

    我有这个向量myvec 我想删除第二个 之后的所有内容并得到结果 如何删除第 n 个 之后的字符串 myvec lt c chr2 213403244 213403244 G T snp chr7 55240586 55240586 T G
  • JA017:无法查找已启动的 hadoop 作业 ID

    当我在Hue的Oozie编辑器中提交mapreduce作业时 如何解决这个问题 JA017 无法查找与操作 0000009 150711083342968 oozie root W mapreduce f660 关联的已启动 hadoop
  • WordPress 数据库中的附加表

    我正在使用 WordPress 我想为我的网站开发更多服务 我正在考虑在 WordPress 数据库中创建新表 这种方法行得通吗 我不希望 WordPress 在更新等时删除我的表 这些服务将位于单独的页面上 它们不会是 WordPress
  • 如何在每次数据变化时刷新kivy RecycleView?

    我正在尝试创建一个简单的考勤应用程序 程序启动时 所有标签都在取消选择列表中 预期行为 当选择任何标签时 数据将移动到所选列表 现在所选标签位于连接列表的末尾 然后 RecycleView 刷新以显示此更改 所以我设法使数据从一个列表移动到
  • 如何使用GTK开发类似Eclipse的界面?

    我想使用 GTKMM 编写一个桌面应用程序 我希望界面由不同的面板组成 就像在 Eclipse 中一样 您有项目资源管理器 控制台 属性等 您应该能够拖动面板来更改其位置 关闭它们并弹出它们 不确定是否可以弹出 Eclipse 中的面板 但