Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Gtk Gdk屏幕和为屏幕添加\u提供程序\u_Gtk - Fatal编程技术网

Gtk Gdk屏幕和为屏幕添加\u提供程序\u

Gtk Gdk屏幕和为屏幕添加\u提供程序\u,gtk,Gtk,Gdk屏幕究竟代表什么? 我猜屏幕代表电脑的整个显示区域,窗口代表特定应用程序的显示区域。 那么,在下面的代码中将提供者添加到屏幕上有什么意义呢?我想我只对当前应用程序窗口的样式感兴趣 css_provider = Gtk.CssProvider() css_provider.load_from_data(css.encode()) context = Gtk.StyleContext() screen = Gdk.Screen.get_default() context.add_provid

Gdk屏幕究竟代表什么?
我猜屏幕代表电脑的整个显示区域,窗口代表特定应用程序的显示区域。
那么,在下面的代码中将提供者添加到屏幕上有什么意义呢?我想我只对当前应用程序窗口的样式感兴趣

css_provider = Gtk.CssProvider()
css_provider.load_from_data(css.encode())
context = Gtk.StyleContext()

screen = Gdk.Screen.get_default()
context.add_provider_for_screen(screen, css_provider,
                                Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
将全局样式提供程序添加到屏幕,该提供程序将在样式中使用 屏幕下所有Gtk.styleContext的构造

这在为屏幕()添加提供程序的文档中。

我没有正确理解屏幕是什么吗?

是Gtk。屏幕是系统屏幕,它处理所有物理屏幕(多个监视器)。这是所有监视器都有一个屏幕(或是常见情况);考虑到这一点,监视器不需要具有相同的尺寸,并且一旦应用程序运行,它就无法自行更改样式,因此这就是屏幕作业。这可以防止应用程序在屏幕上显示恼人的大小


因此,由于5个像素并不总是5个像素,因此样式需要由屏幕而不是窗口来管理,所有这些都不考虑颜色管理。

什么是“一旦应用程序运行,它就不能自行更改样式”是什么意思?在我看来,在屏幕上添加样式也会影响其他窗口,这是如何工作的?我没有指定要设置哪个窗口样式的任何位置,但它正在设置所需窗口的样式。但是怎么做呢?Gtk有一个主函数,这个主函数由应用程序实例化,一个实例不影响其他实例