GTK主题之个人理解:

  GTK 主题引擎(包含代码所需的图形元素) +  主题配置文件(gtkrc文件)+ 数据资源文件(如图片等)    三者所呈现给用户的视觉风格效果

GTK拥有一套大量的widget集合,如按钮,滚动条,编辑框等,每一种组件的属性都可以单独进行配置;  所有的widget由GtkWidget派生出来,Gtkwidiget包括GnomePanel /GtkButton /GtkCheckButton /GtkColorButton /GtkComboBox /GtkComboBoxEntry /GtkEntry /GtkFrame /GtkMenu /GtkMenuBar /GtkMenuItem /GtkNotebook /GtkProgressBar /GtkRadioButton /GtkScale /GtkSpinButton /GtkStatusbar /GtkTreeView /StyleProperties /SymbolicColors。 如果没有针对特定组件定义主题效果,GtkWiget的风格则该组件的默认效果。

组件的状态包括五种:

NORMAL:鼠标没有覆盖,点击的状态
        PRELIGHT:鼠标在组件之上
        ACTIVE:鼠标被按下或点击的状态,
        INSENSITIVE:不能被激活,或点击的状态
        SELECTED:被选对象可以带好多属性

组件的属性一般包括如下几种:

fg:设置一个构件的前景色
        bg:设置一个构件的背景色
        text:可编辑文本构件的前景色
        base:可编辑文本构件的背景色
        bg_pixmap:显示像素图的构件的背景色
        font_name:设置字体风格
        xthickness:设置左右边界的宽度
        ythickness:设置上下边界宽度

1、菜单栏按钮

2、工具栏按钮

3、地址栏切换按钮

定制linux中的Gtk theme<一>如何设置窗口按钮的多态效果的更多相关文章

  1. 在linux中添加ftp用户,并设置相应的权限

    在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建用户:在root用户下: useradd ...

  2. linux中添加ftp用户,并设置相应的权限

    在linux中添加ftp用户,并设置相应的权限,操作步骤如下: 1.环境:ftp为vsftp.被限制用户名为test.被限制路径为/home/test 2.建用户:在root用户下: useradd ...

  3. Linux中计划任务、周期性任务设置

    Linux中计划任务.周期性任务设置 计划任务:指在未来的特定时间里,执行一次某一特定任务.当然,如果同一任务需要在不同时间点执行执行两次.三次或多次,可以视为多个一次看待. 周期性任务:指某一任务需 ...

  4. linux中的gtk 编程的页面切换

    在我们使用gtk这个工具时,有时想在同一个窗口中,根据选择来显示不同的操作菜单,这篇博文主要是解决此类问题 //创建窗口 GtkWidget *CreateMenuMain() { GtkWidget ...

  5. linux中vi/vim显示行号设置

    vim打开文件是,默认不提示行号. 至于显示行号的用途,因人而异 临时修改只需要在编辑文件时输入 :set number 即可 linux下一个主机可能有N个账户.对于配置分为两种:仅配置当前账户,配 ...

  6. Linux中tomcat随服务器自启动的设置方法

    1. cd到rc.local文件所在目录,一般在 /etc/rc.d/目录. 2. 将rc.local下载到本地windows系统中. 3. 编辑rc.local,将要启动的tomcat  /bin/ ...

  7. linux中cd后自动 ls的设置

    根据不同的shell设置不太一样.常见的有bash csh两种.可以用echo $SHELL来查询当前是哪一种. bash设置是在用户的home下打开.bashrc在里面加上如下: cd() { bu ...

  8. Linux中监控命令top命令使用方法详解

    收集了两篇关于介绍Linux中监控命令top命令的详细使用方法的文章.总的来说,top命令主要用来查看Linux系统的各个进程和系统资源占用情况,在监控Linux系统性能方面top显得非常有用,下面就 ...

  9. linux中top命令详解

    linux的top命令里的cpu信息是什么意思呢? Cpu(s): 62.1% us, 15.9% sy,0.1% ni, 19.4% id,2.0% wa,0.1% hi,0.4% si Mem:  ...

随机推荐

  1. Scrambled Polygon - POJ 2007(求凸包)

    给一些点,这些点都是一个凸包上的顶点,以第一个点为起点顺时针把别的点拍排一下序列. 分析:最简单的极坐标排序了..................... 代码如下: ----------------- ...

  2. Maven 私服配置 转

    1.配置Nexus为maven的私服 第一种方式:在项目的POM中如下配置 <repositories>     <repository>         <id> ...

  3. Linq to Object实现分页获取数据

    最后调用的CSharp代码可以是: int totalcount = dboperator.Customers.Count(); //总记录数 int pagesize = 100;//每页显示数 / ...

  4. SpringMVC DispatcherServlet 说明与web配置

    使用Spring MVC,配置DispatcherServlet是第一步. DispatcherServlet是一个Servlet,所以能够配置多个DispatcherServlet. Dispatc ...

  5. 分布式还是混合式? 谈CDN架构对服务质量的影响

    传统分布式模型 通 常,内容分发网络(CDN)採用分布式模型.在这样的模型里, 用户的文件存放在一个源server上.而且由大量边缘server负责分发这些文件.这些边缘server的磁盘空间比較小. ...

  6. iOS-本地推送(本地通知)

    第一步:注册本地通知: // 设置本地通知 + (void)registerLocalNotification:(NSInteger)alertTime { UILocalNotification * ...

  7. Android开发:最详细的 NavigationDrawer 开发实践总结

    最详细的 NavigationDrawer 开发实践总结 继前面写的两篇文章之后(有问题欢迎反馈哦): Android开发:Translucent System Bar 的最佳实践 Android开发 ...

  8. 关于struts2中action请求会执行两次的问题

    关于struts2中action请求会执行两次的问题     在struts2中发现,调用action中的方法,方法会被执行两次,后来发现调用的方法是get开头的,把它改为其他名称开头的后,就不会执行 ...

  9. json、xml ---- 数据格式生成类

    自己写的一个生成json/xml 格式数据的类,可用于api数据传输: <?php class Response{ /** *生成指定数据格式 *@param intval $code 状态码 ...

  10. 添加Appicon的方法

    1.将设计好的图片,拖拽到Groups&Files的Resources目录下: 2.修改Resources目录下的“工程名-info.plist”文件 3.修改该文件的Iconfile属性,填 ...