如何重画tabcontrol 的背景色

kv888 2008-07-07 10:20:09
private void tabControl1_DrawItem(object sender, System.Windows.Forms.DrawItemEventArgs e)
{
Font f;
Brush backBrush;
Brush foreBrush;

if (e.Index == this.tabControl1.SelectedIndex)
{
//f = new Font(e.Font, FontStyle.Italic | FontStyle.Bold);
f = new Font(e.Font, FontStyle.Regular);
//backBrush = new System.Drawing.Drawing2D.LinearGradientBrush(e.Bounds, Color.Blue, Color.Red, System.Drawing.Drawing2D.LinearGradientMode.BackwardDiagonal);
backBrush = new System.Drawing.Drawing2D.LinearGradientBrush(e.Bounds, Color.FromArgb(223, 232, 247), Color.FromArgb(223, 232, 247), System.Drawing.Drawing2D.LinearGradientMode.BackwardDiagonal);
foreBrush = Brushes.Black;
}
else
{
f = e.Font;
backBrush = new SolidBrush(e.BackColor);
foreBrush = new SolidBrush(e.ForeColor);
}

string tabName = this.tabControl1.TabPages[e.Index].Text;
StringFormat sf = new StringFormat();
sf.Alignment = StringAlignment.Center;
e.Graphics.FillRectangle(backBrush, e.Bounds);
Rectangle r = e.Bounds;
r = new Rectangle(r.X, r.Y + 3, r.Width, r.Height - 3);
e.Graphics.DrawString(tabName, f, foreBrush, r, sf);

sf.Dispose();
if (e.Index == this.tabControl1.SelectedIndex)
{
f.Dispose();
backBrush.Dispose();
}
else
{
backBrush.Dispose();
foreBrush.Dispose();
}
}

以上代码只能改变已经创建的tabpage的颜色 可以剩下右侧的区域还是灰色的 我想把整个tabcontrol都改变成其它颜色
...全文
353 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
sunhongwu 2011-12-09
  • 打赏
  • 举报
回复
学习学习
GentleCat 2008-07-07
  • 打赏
  • 举报
回复
推荐一个第二方控件给你: MagicControl 里面包含了你想要的tabControl 还有其他的控件~
lovefootball 2008-07-07
  • 打赏
  • 举报
回复
参考下
http://www.codeproject.com/KB/miscctrl/TabHeader.aspx
huing 2008-07-07
  • 打赏
  • 举报
回复
tabcontrol不支持backcolor属性,需要自己重画。上codeproject上找一个flattabconrol,里面说的比较详细
sjm2003 2008-07-07
  • 打赏
  • 举报
回复
设置form背景颜色似乎可以
s000rd 2008-07-07
  • 打赏
  • 举报
回复
本地图片看不到,你放到网上,找一些免费的空间,并支持盗链的
kv888 2008-07-07
  • 打赏
  • 举报
回复
就是"部门维护" 右边的一条灰色的区域
kv888 2008-07-07
  • 打赏
  • 举报
回复
s000rd 2008-07-07
  • 打赏
  • 举报
回复
以上代码只能改变已经创建的tabpage的颜色 可以剩下右侧的区域还是灰色的 我想把整个tabcontrol都改变成其它颜色

这句是啥意思?右侧区域只那里?TabItme还是下面的区域?
kv888 2008-07-07
  • 打赏
  • 举报
回复
不可以重画马?
sjm2003 2008-07-07
  • 打赏
  • 举报
回复
不如自己做个类似tabcontrol的控件用BUTTON 和PANEL做
sjm2003 2008-07-07
  • 打赏
  • 举报
回复
tabcontrol只是一个容器,没有背景色属性。
标题SpringBoot中小学教育辅导系统设计与实现AI更换标题第1章引言介绍中小学教育辅导系统的研究背景、意义、现状以及论文的方法和创新点。1.1研究背景与意义分析当前中小学教育辅导的现状及系统开发的重要性。1.2国内外研究现状探讨国内外中小学教育辅导系统的发展现状与趋势。1.3研究方法以及创新点概述本文的研究方法,阐述系统的创新点。第2章相关理论介绍SpringBoot框架及教育辅导系统相关理论。2.1SpringBoot框架概述介绍SpringBoot框架的特点、优势及在系统开发中的应用。2.2教育辅导系统理论基础阐述教育辅导系统的基本理论,包括学习理论、教学理论等。2.3系统开发相关技术概述系统开发过程中涉及的其他关键技术,如数据库技术、前端技术等。第3章系统需求分析与设计对中小学教育辅导系统进行详细的需求分析与设计。3.1需求分析分析系统的功能需求、性能需求及用户需求。3.2系统架构设计设计系统的整体架构,包括前后端分离架构、模块划分等。3.3数据库设计设计系统的数据库结构,包括表结构、关系等。第4章系统实现详细介绍中小学教育辅导系统的实现过程。4.1开发环境搭建介绍系统开发所需的环境配置及工具选择。4.2功能模块实现阐述各个功能模块的实现过程,包括用户管理、课程管理、学习资源管理等。4.3系统测试与优化对系统进行测试,包括单元测试、集成测试等,并对系统进行优化。第5章系统应用与效果分析对中小学教育辅导系统的应用效果进行分析。5.1系统应用情况介绍系统在实际应用中的情况,包括用户反馈、使用数据等。5.2效果评估与分析从教学效果、用户体验等方面对系统进行评估与分析。5.3对比方法分析通过与传统教育辅导方式对比,凸显系统优势。第6章结论与展望总结中小学教育辅导系统的设计与实现成果,并展望未来的研究方向。6.1研究结论概括系统的主要功能、特点及创新点。6.2展望指出系统
内容概要:本文详细介绍了一种欠定盲源分离方法,并深入探讨其在模态识别中的应用,重点依托Matlab代码实现相关算法流程。该方法针对传感器数量少于源信号数量的“欠定”情形,通过稀疏表示、时频分析与独立成分分析(ICA)等核心技术,从混叠振动信号中高效分离出原始模态信号,进而提升结构模态参数识别的精度与鲁棒性。研究紧密结合工程实际,适用于复杂结构的振动分析、故障诊断与健康监测,为信号处理与结构动力学交叉领域提供了可复现的技术路径。; 适合人群:具备信号处理、线性代数及Matlab编程基础的研究生、科研人员与工程技术人员,尤其适合从事机械、土木、航空航天等领域中结构动力学分析与状态监测的相关工作者。; 使用场景及目标:① 掌握欠定盲源分离的基本理论与算法实现流程;② 将该方法应用于实际工程中的模态参数识别,如桥梁、风机叶片等大型结构的振动信号分离与故障特征提取;③ 借助提供的Matlab代码进行算法复现、性能测试与二次开发,服务于科研论文撰写、项目攻关或工业检测系统开发。; 阅读建议:建议读者结合理论推导与Matlab代码同步研读,重点关注信号混合模型构建、稀疏成分提取、时频掩膜设计及分离效果评估等关键环节,并尝试在真实或仿真数据集上进行实验验证与参数调优,以深入理解方法的适用边界与优化潜力。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧