GTK# 中的 Gtk 主题 (Windows)

2023-12-13

我正在尝试更改 GTK# 中的主题(操作系统:Windows,IDE:Xamarin)。但我遇到了下一个问题:

  1. 我只能找到一个正确渲染的主题,它是“Orta”。一切都很好,除了滞后和冻结。这是我的代码:

    string Resource_File = "Orta\\gtk-2.0\\gtkrc"; Application.Init (); Gtk.Rc.AddDefaultFile (Resource_File); Gtk.Rc.Parse (Resource_File); MainWindow win = new MainWindow (); win.Show (); Application.Run ();

    当我更改 Paned 的大小或单击按钮时,GUI 冻结(我已经问过这个了)。仅在使用该主题时才会出现此问题,其他主题都可以正常工作。我使用搜索并找到了一些意见,关于这是由于使用 Cairo 来渲染图形(其中之一).

  2. 如果我尝试使用不同的主题,许多 GUI 元素未正确呈现在我的 GTK# 应用程序中,但它们在 GTK 主题选择器中正确呈现。如果主题在 GTK 主题选择器中正确显示,那么我尝试在我的 Gtk# 应用程序中使用所选的 gtkrc 文件(如示例中的“Orta”所示),但几乎总是大多数小部件无法正确显示(这是一个例子)

所以我有几个问题:

  1. 如何选择作品主题?
  2. 如何为 GTK# (Windows) 设置主题?
  3. 有哪些 Gtk# 开源应用程序使用主题以及如何使用?
  4. 还有什么其他方法可以更改 GTK# 应用程序中 GUI 的样式?
  5. 为什么“Orta”主题冻结了?

所以我需要你的帮助! 谢谢!


我知道这是一个老问题,但最近我一直在与主题作斗争。

事实证明,当使用 Xamarin 运行 Gtk# 应用程序构建时,会出现主题问题,因为似乎某些“类似 Windows”的主题被强制写入代码中。

从 Xamarin Studio 运行应用程序时,根据 .Net 框架(Microsoft .NET 4.5、Mono 3.3.0、Mono 4.0.1),行为会有所不同。我收到了 Mono 3.3.0 的警告,告诉我找不到“Xamarin”引擎。

我最终得到以下代码:

Application.Init ();
Gtk.Settings.Default.ThemeName = "Theme/gtk-2.0/gtkrc";
Gtk.Rc.Parse ("./Theme/gtk-2.0/gtkrc");

其中 gtkrc 是我的主题。如果不设置默认主题名称,则无法正常工作。我没有深入定制我的主题,所以我无法判断它是否解决了每个主题问题。

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

GTK# 中的 Gtk 主题 (Windows) 的相关文章

  • 在Gtk中,是否可以使小部件淡入淡出?

    我想要一个Label 或者至少是标签上的文字 进行快速淡入 看起来这是可能在混乱中 http blog didrocks fr index php post Design experience and demos in GTK Clutte
  • GTK C# 小部件更改颜色不起作用

    我试图通过使用更改 GTK 中按钮小部件的颜色 button1 ModifyBase Statetype Normal new Gdk Color 1 1 1 这是从另一个按钮单击事件调用的 但小部件颜色未更新 为什么是这样 您可以只使用M
  • 如何使用 css 代码单独设置 gtk 小部件的样式

    在这之后GTK 将字体更改为旋转按钮 https stackoverflow com questions 47083294 gtk change font to spin button和这个为什么 CSS 样式没有应用于 GTK 代码 ht
  • 如何使用 PyGTK 和 PyCairo 在窗口中获得透明背景?

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

    我正在开发 clickonce 应用程序 我可能想在 Mac 平台上分发该应用程序 我知道我可以使用 Mono 编译 Net 应用程序 并且它可以在 Mac 上运行 但是我可以使用 clickonce 作为安装程序吗 thanks 我认为
  • 如何将 Windows 桌面应用程序转换为 Mac 桌面应用程序?

    我需要将 C NET Windows 桌面应用程序转换为 Mac 我读过有关 Qt REAL Studio LiveCode RunRev wxWidgets 和 Mono 的跨平台方面的内容 www mono project com 和h
  • 在 Mac 上开发 .Net 应用程序? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我是 Net 开发人员 开始使用 Mac OS 我在这个系统上唯一怀念的是 VISUAL STUDIO 我不想使用两个系统 你认为如何开发 Ne
  • 嵌入.Net运行时

    我是否可以嵌入 net 运行时 以便主机操作系统不需要 net 我正在考虑用 Mono 来做到这一点 如下所示 http mono project com Embedding Mono http mono project com Embed
  • Mono - XDocument.Load 因 LoadOptions.PreserveWhitespace 失败

    使用 Mono 版本 2 10 5 以下代码在任何 XML 文档上都会失败 using System using System Collections Generic using System Linq using System IO us
  • 编译时引用.NET dll(使用单声道)

    我问了一个安装 F powerpack 并使用它的问题here https stackoverflow com questions 6206406 how to install and use f powerpack in mono err
  • Mono WebClient 编码问题

    我正在尝试移植 NET应用程序从 Windows 到 Mono 但某些在 Windows 上运行的代码不再运行 正如预期的那样 on mono WebClient client new WebClient Console WriteLine
  • 如何获取图标名称的完整文件路径?

    如何从 GNOME 中的图标名称获取完整文件路径 import gtk icon theme gtk icon theme get default icon info icon theme lookup icon my icon name
  • 服务堆栈上的 SSL

    Mono 上的服务堆栈是否支持 SSL 我只能访问 Mac 我在这里找到的说明要求您使用 Windows 工具创建 pvk 文件 http joshua perina com geo post using ssl https with mo
  • 如何从与桌面交互的应用程序与 Windows 服务进行通信?

    使用 Net 与服务交互的最佳方式是什么 即大多数托盘应用程序如何与其服务器通信 如果这个方法也是跨平台的 那就更好了 在 Mono 中工作 所以我猜远程处理已经过时了 Edit 忘了说了 我们仍然需要在现场支持 Windows 2000
  • 如何在 Linux 中检测通过 GUI 登录的用户

    我想在我的程序中捕获通过 GUI 登录的用户名 我的程序作为守护进程从 root 登录运行 如果非 root 用户通过 GUI 登录 我的程序应该会收到通知 我正在粘贴我当前的程序 该程序调用一个 perl 脚本 利用系统调用来检查当前登录
  • Python GTK 信号处理程序不工作

    我正在使用 GTK 为 GUI 编写一个 Python 应用程序 我注意到从终端使用 Ctrl C 关闭它不起作用 我发现这是因为一个错误 所以我尝试手动处理该信号 问题是 如果我将默认行为设置为默认行为 则会捕获信号并正确关闭应用程序 但
  • 在 GTK+ (gtkD) 中处理按键

    我正在玩gtkD http www dsource org projects gtkd GTK 的 D 绑定 我有一个window对象 实例gtk MainWindow 我想处理它的按键 How 如何处理特殊键 例如箭头键 pgup pgd
  • Mono for Android,读取和写入 XLSX

    我正在使用 Mono for Android 开发一个应用程序 我需要读取和创建 XLSX Excel 文件的功能 我尝试过EPPlus和NPOI 并快速浏览了一下微软的Open XML SDK 发现了以下问题 EPPlus 需要 Wind
  • linux下无法安装Cairo包

    我在本地下载该软件包并尝试安装它 但出现此错误 R CMD INSTALL l usr local lib64 R library Cairo 1 5 1 tar gz 我得到他的错误 checking for PNG support in
  • 如何在 StatusIcon 上显示文本而不是设置图标?

    我是 Gtk 和 Python 的初学者开发人员 我正在尝试创建一个 gtk StatusIcon 显示文本字符串来代替图标 我如何使用 PixBuf 或任何其他方式来完成此任务 Thanks 使用 Python 和 GTK3 的示例 fr

随机推荐