c++ - 如何制作 Block builder\拖放布局程序?

标签 c++ linux gtk# glade gtkmm

我是 GUI 编程的新手,我想创建一个具有模块的程序,并允许其用户通过拖放将这些模块连接在一起,然后以可视化方式将它们连接在一起,以创建用于模拟的结构。

市场上已有的示例软件: Proteus , EV3 乐高软件 , matlab simulink

我计划将 glade 与 gtkmm 一起使用,尽管我在该主题上发现的只是拖放教程,这不是很有用

我真的只需要指南以及从哪里开始学习如何制作我的项目

谢谢

最佳答案

我不知道有任何 GTK+ 或 gtkmm API 会有很大帮助,尽管我希望存在一些合适的高级 API。我实现了一些非常相似的东西,用于设计数据库表图:

http://www.murrayc.com/permalink/2007/02/17/glom-relationships-overview/

以及为数据库记录设计打印布局。 我通过 goocanvasmm 使用 GooCanvas,但必须实现几个类以提供通用功能,例如拖动移动、拖动角调整大小、对齐网格、对齐线等。我的代码有效,但我不是很自豪:

https://git.gnome.org/browse/glom/tree/glom/utility_widgets/canvas

Glade 在这方面帮不上什么忙。它用于布置普通小部件,而不是用于实现像这样的专用 UI​​。

关于c++ - 如何制作 Block builder\拖放布局程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35528652/

相关文章:

c++ - 如何更改在 Makefile 中自动生成的命令的默认参数

c++ - 在 VS 中更改常量 char* 文字的元素

Python setsockopt 与 IP_ADD_MEMBERSHIP 的参数无效

linux - 捕获 Chrome 发送的流量

linux - 在导入包中定义结构时如何使用 go receiver

WinForms 与 GtkSharp 与 Mono 的比较

c++ - 使用头文件、类和其他任何东西来缩短编译时间? - C++

c++ - 减少库的安装

c# - 更改 Gtk.Image 的单个像素

c# - 使 GTK# 文件选择器仅选择文件