草庐IT

c# - 绘图区中的 GTK# 鼠标事件

我有一个DrawingArea,我想接收鼠标事件。从教程中我发现KeyPressEvent也会捕获鼠标事件。但是,对于以下代码,永远不会调用处理程序。staticvoidMain(){Application.Init();Gtk.Windoww=newGtk.Window("");DrawingAreaa=newCairoGraphic();a.KeyPressEvent+=KeyPressHandler;w.Add(a);w.Resize(500,500);w.DeleteEvent+=close_window;w.ShowAll();Application.Run();}priva

c# - GTK# 和 Windows 窗体之间有什么区别?

GTK#和Windows窗体有什么区别?它们完全不同吗?谢谢 最佳答案 Gtk#:GTK#是Gtk+工具包的.NET绑定(bind)。该工具包是用C语言编写的,以提高速度和兼容性,而GTK#绑定(bind)提供了一个易于使用、面向对象的API以供托管使用。Mono项目正在积极开发它,并且有各种可用的实际应用程序使用它(Banshee、F-Spot、Beagle、MonoDevelop)。一般来说,GTK#应用程序是使用MonoDevelop编写的,它提供了用于创建GTK#GUI的可视化设计器。平台:Unix、Windows、OSX优

c# - 如何使用 NodeView 获得可调整大小和可排序的列?

我刚开始使用GTK#,我有一个NodeView正在工作,现在我想让列能够由用户调整大小和排序(就像Windows资源管理器中的详细信息View模式)。我在互联网上四处寻找,但找不到帮助。我为此使用了错误的小部件吗??编辑:终于将我的回答移到了正确的回答帖中,见下文。谢谢!杰森 最佳答案 好的,我找到了如何使列可调整大小,但您必须按照我想出的方式在每一列上进行设置。我仍然想知道是否有办法通过在NodeView本身上设置一些东西来使它们都可以调整大小。Anyhoo,这是我调整大小的解决方案:myView.AppendColumn("Ge

c# - Windows 上基于 Gtk 的 Mono.WebBrowser

我正在尝试想出一个最简单的例子来使用Mono.WebBrowser在Windows上使用Gtk。Windows.Forms版本有效很好(如果不指定Platform.Gtk,则为默认设置),但我需要集成到现有的Gtk跨平台应用程序中。这是一个简单的例子:publicstaticvoidMain(string[]args){Gtk.Application.Init();Gtk.Windowwin=newGtk.Window("Title");Mono.WebBrowser.IWebBrowserbrowser=Mono.WebBrowser.Manager.GetNewInstance(M

c# - 我应该用 GTK+ 而不是 WinForms 为 Mono 重写 GUI 吗?

我正在使用VisualStudio、winforms制作应用程序,我正在使用openTK。最近我想让它跨平台。我将使用Mono,因为我不知道其他类似的东西。而且我完全没有使用GTK+的经验。在我的应用中,目前有4个窗口(当然以后会更多)。我想让应用程序在Windows、Linux和OSX上运行得更快。我读过,GTK+比WinForms好,但仍然不确定该选择哪个。那么,我应该为GTK+重新制作所有内容还是继续使用WinForms,为什么?另外,是否有任何工具可以为我完成这项工作? 最佳答案 老实说,您需要告诉我们更多关于您的受众/预期

c# - 使用 mkbundle 将 Mono GTK# 应用程序移植到其他平台

我是一名长期的C#开发人员,但不熟悉Mono,尤其是Gtk#。我使用C#和Gtk#开发了一个小应用程序。我需要这个应用程序在Windows、Linux和Mac上运行,所以我决定选择Mono,到目前为止,它似乎是一个很酷的框架。我的简单应用程序所做的是根据用户选择的本地目录和端口启动XSP网络服务器。理想情况下,我希望我的应用程序无需首先安装Mono框架即可运行,但这并不是必须开始的。我正在使用以下库:usingSystem;usingGtk;usingSystem.Net;usingMono.WebServer;usingSystem.Diagnostics;我正在Mac(SnowLe

c# - 如何在 Gtk# TreeView 中管理特殊用途的按键?

我在Gtk#/monoC#中有一个KeyPressed信号用于两个不同的目的,这在默认的TreeView中是不存在的:a)按T​​AB键转到下一个单元格,然后b)按任意键开始编辑。TreeView很简单,它有一个只显示行和列的ListStore,即它包含表格数据。我的代码如下。[GLib.ConnectBefore]protectedvoidOnTableKeyPressed(objecto,Gtk.KeyPressEventArgsargs){introwIndex;intcolIndex;//Donot"eat"thekey,bydefaultargs.RetVal=false;/

c# - Visual Studio 2010 中的 GTK#

我一整天都在尝试让GTK#在WindowsServer2008R2x64上的VisualStudio2010中工作,这样我就可以开始编写不错的跨平台GUI应用程序,但我对C#有点陌生,而且我有麻烦的世界。我为Windows安装了最新的Mono,其中包括GTK#。我还按照此处的指南安装了一个Mono2.10.8配置文件作为我项目的目标框架:http://erictummers.wordpress.com/2012/01/25/target-mono-from-visual-studio/我创建了一个新的Windows窗体应用程序并删除了对Windows窗体内容的引用并添加了对GTK#内容

c# - GTK# 图像按钮在运行时不显示图像

我尝试在GTK#(XamarinStudio)中使用图像按钮。我将图像设置为按钮,然后在UIBuilder中显示图像。但是当我运行程序时,按钮中没有图像我在不同版本的IDE和不同平台(Mac和Windows)上试过这个请帮忙更新:主窗口.csusingSystem;usingGtk;publicpartialclassMainWindow:Gtk.Window{publicMainWindow():base(Gtk.WindowType.Toplevel){Build();}protectedvoidOnDeleteEvent(objectsender,DeleteEventArgsa

c# - 如何从多线程访问 GUI (GTK)?

我有一个从GUI生成的工作线程(用于GUI性能),我如何访问GUI,例如从线程本身生成新窗口/小部件?我尝试使用委托(delegate),但它似乎不起作用。有任何想法吗?可能的例子?谢谢。 最佳答案 根据他们的BestPractices:Gtk#isnotathread-safetoolkit,whichmeansthatonlyonethreadatatimecansafelyinvokemethodsonGtk#.Thisthreadistypicallythethreadexecutingthemainloop(whichis