当前位置: 首页> 文旅> 艺术 > 深圳十大广告公司_广州西樵网站制作_竞价托管是啥意思_最近一周新闻大事摘抄

深圳十大广告公司_广州西樵网站制作_竞价托管是啥意思_最近一周新闻大事摘抄

时间:2025/7/14 9:08:54来源:https://blog.csdn.net/qq_39417283/article/details/145777969 浏览次数:0次
深圳十大广告公司_广州西樵网站制作_竞价托管是啥意思_最近一周新闻大事摘抄

以下是关于 QDockWidget 样式设置的详细指南,涵盖标题栏、边框、浮动状态等常见定制需求:


1. 核心样式属性

QDockWidget 的样式可通过以下选择器和子控件控制:

  • QDockWidget:主容器样式
  • QDockWidget::title:标题栏区域
  • QDockWidget::close-buttonQDockWidget::float-button:关闭/浮动按钮
  • QDockWidget:floating:悬浮状态时的样式

2. 常用样式代码示例

(1) 标题栏样式
/* 标题栏背景、文字、边距 */
QDockWidget::title {background: #2c3e50;          /* 背景颜色 */color: white;                /* 文字颜色 */padding: 4px 10px;           /* 内边距 */border: 1px solid #34495e;   /* 边框 */border-radius: 3px;          /* 圆角 */
}/* 鼠标悬停标题栏时的效果 */
QDockWidget::title:hover {background: #34495e;
}/* 关闭按钮样式 */
QDockWidget::close-button {subcontrol-origin: margin;   /* 定位基准 */subcontrol-position: right;  /* 位置 */padding: 2px;                /* 内边距 */image: url(close_icon.png);  /* 自定义图标 */
}/* 浮动按钮样式 */
QDockWidget::float-button {subcontrol-position: right bottom;image: url(float_icon.png);
}
(2) 主容器和内容区域
/* QDockWidget整体边框和背景 */
QDockWidget {border: 2px solid #7f8c8d;    /* 边框 */titlebar-close-icon: none;    /* 隐藏默认关闭图标 */titlebar-normal-icon: none;   /* 隐藏默认恢复图标 */
}/* 内容区域背景色 */
QDockWidget > QWidget {background: #ecf0f1;
}
(3) 浮动状态样式
/* 悬浮时的边框阴影 */
QDockWidget:floating {border: 2px solid #e74c3c;box-shadow: 3px 3px 5px rgba(0,0,0,0.2); /* 阴影效果 */
}

3. 高级定制技巧

(1) 标题栏渐变和图标对齐
QDockWidget::title {background: qlineargradient(x1:0, y1:0, x2:0, y2:1,stop:0 #3498db, stop:1 #2980b9);  /* 渐变背景 */text-align: left;                     /* 文字左对齐 */padding-left: 20px;                   /* 左侧留空 */
}
(2) 动态状态控制
/* 折叠时的标题栏样式 */
QDockWidget:closed {background: #95a5a6;
}/* 禁用状态 */
QDockWidget:disabled {border-color: #bdc3c7;
}
(3) 分隔条样式(Dock之间的拖拽分隔线)
/* 水平分隔条 */
QDockWidget::separator:horizontal {width: 4px;                         /* 宽度 */background: #bdc3c7;                /* 默认颜色 */border-left: 1px solid #7f8c8d;     /* 左侧线 */border-right: 1px solid #7f8c8d;    /* 右侧线 */
}/* 垂直分隔条 */
QDockWidget::separator:vertical {height: 4px;background: #bdc3c7;
}

4. 完整示例

// 在代码中设置全局样式
qApp->setStyleSheet(R"(QDockWidget {border: 2px solid #7f8c8d;font: 12px "Arial";}QDockWidget::title {background: #2c3e50;color: white;padding: 6px;border: none;}QDockWidget::close-button {subcontrol-position: right top;right: 5px;top: 5px;width: 16px;height: 16px;image: url(:/icons/close_white.png);}QDockWidget:floating {border: 2px solid #e74c3c;}
)");

5. 注意事项

  1. 子控件定位:使用 subcontrol-positionsubcontrol-origin 精确控制按钮位置。
  2. 图标资源:建议将图标文件(如 PNG)添加到 Qt 资源系统(.qrc)。
  3. 平台兼容性:部分样式(如阴影 box-shadow)可能在不同操作系统或 Qt 版本中表现不同,需实际测试。
  4. 动态效果:可通过伪状态(:hover, :pressed)增强交互感。

关键字:深圳十大广告公司_广州西樵网站制作_竞价托管是啥意思_最近一周新闻大事摘抄

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: