c# - GTK# 常见陷阱

标签 c# mono gtk#

我真的在考虑开始我的下一个项目作为 C#/Mono/Gtk#组合。

过去我从来没有选择 GTK,因为用 GTK 构建的所有东西看起来都很糟糕,在视觉表示方面我有点强制症。然而,大量的应用程序(想想 Banshee,VMWare 控制台)已经清楚地证明我的偏见是错误的,并 reshape 了我对 GTK 的看法,认为它不美观。

我来自 Win32 API,[CreateWindowEx][2s] 有太多 hwnd's,GTK# 提供了一个非常好的 API,但是如果我需要更深入地挖掘(扩展控制行为等)怎么办?和我一起?

我从未使用过 Mono 或 GTK,所以“嘿,它在 Linux 和 Mac OS 上运行”的论点像胶水一样粘在我的头骨上,并且希望人们对我(很有可能)过度简化的观点提出一些看法。

开机需要注意什么?

最佳答案

我遇到的最大问题是缺少良好的 Canvas 控件,如果您真的想创建漂亮的 UI,您可能需要它。例如,Banshee 有一大堆由 Aaron Bockover 使用 Cairo 从头开始​​编写的自定义控件。尽管此解决方案非常灵活,但它需要对 Gtk、Cairo 和所有其他相关内容有非常深入的了解。 但是,不要将我的意见视为一种沮丧。 Gtk+ 和扩展 Gtk# 是一个了不起的环境,使用它可以很容易地快速创建非常具有视觉吸引力的 GUI。

关于c# - GTK# 常见陷阱,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/494951/

相关文章:

c# - 两个具有共享滚动条的 Gtk TextView 小部件

linux - XGrabKey 不工作

c# - 在 MonoDevelop 和 GTKSharp 中使用小部件

c# - ASP.NET 和 EF 非常非常慢

linux - 使用 .NET CoreCLR 中的单声道程序集

asp.net-mvc - 在单声道或 Windows 上托管 ServiceStack、MVC3 或 MVC4 以及单声道的状态是什么

android - MonoDroid 上的 MonoGame - 共享运行时初始化错误无法加载库 "libmonosgen-2.0.so"

c# - 如何在 void 返回方法上使用异步委托(delegate)

c# - 如何在 WPF 中保存应用程序主题名称

c# - 移动文件 3 次时出现异常