这个是不是非得重写操作系统啊???

luluyy 2012-03-22 10:08:37
winform写出来的程序 不管用户怎么切换系统主题``程序始终保持windows经典样式的界面风格.

这个怎么整?
...全文
216 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
luluyy 2012-04-04
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 的回复:]
你是想不管系统主题怎么变,你的窗口界面都保持自己的风格对吧,就像2000那种
你在系统加载时,修改一下控件的样式,(时间长了记不太清了,)
就是系统下面的那个控件文件,加载的时候参数改一下就行了
[/Quote]

其实主要是想更改一下标题的样式,我看了一下窗口代码如下:


private System.Windows.Forms.Button btn_close;
private System.Windows.Forms.Button btn_login;
private System.Windows.Forms.Label lb_Name;
private System.Windows.Forms.Label lb_Pwd;
private System.Windows.Forms.Label lb_yuyan;
private System.Windows.Forms.TextBox txt_User;
private System.Windows.Forms.TextBox txt_Pwd;
private System.Windows.Forms.ComboBox CB_Base;
private System.Windows.Forms.Label label4;
private System.Windows.Forms.Label label5;
private System.Windows.Forms.Label label6;
private System.Windows.Forms.Label label1;

这些是初使窗体的一些控件,窗口代码生成后的一些属性就是this.XXX.Text="XXXX";
这样的字样``并没有看到怎么设置标题的样式




在Program.cs文件里看到了:

/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();//这一行指定是否按XX样式显示
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new frm_Login());
}


请指点具体怎么弄一下呢,无标题窗体 自己画窗体有点麻烦啊 如果窗口多了都弄就比较复杂了

求解
mingcsharp 2012-04-03
  • 打赏
  • 举报
回复
你是想不管系统主题怎么变,你的窗口界面都保持自己的风格对吧,就像2000那种
你在系统加载时,修改一下控件的样式,(时间长了记不太清了,)
就是系统下面的那个控件文件,加载的时候参数改一下就行了
缪军 2012-04-03
  • 打赏
  • 举报
回复
用无框无标题烂的窗口,自己画出标题栏,关闭按钮和边框以及状态栏等等,
字体和颜色都明确指定值,而不是使用系统提供的类型指代
luluyy 2012-04-03
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 的回复:]
引用 6 楼 的回复:

引用 5 楼 luluyy 的回复:

引用 4 楼 caozhy 的回复:
在Program.cs Main()里面有一个EnableVisualStyle()的方法,确保存在。



把这个代码加上的话就会随着系统主题变化而变化了``如果去掉的话` 程序的最上面的标题栏还是会变,
这个方法已经试过了。

在程序文件上点右键-属性-兼容性-关闭视……
[/Quote]



在程序文件上点右键-属性-兼容性-关闭视……
这样的话标题栏跟windows经典样式也不一样我想弄成跟windows经典样式那样的
luluyy 2012-04-03
  • 打赏
  • 举报
回复
我想让它使终跟Windows经典那样的样式
orochiheart 2012-04-03
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

引用 5 楼 luluyy 的回复:

引用 4 楼 caozhy 的回复:
在Program.cs Main()里面有一个EnableVisualStyle()的方法,确保存在。



把这个代码加上的话就会随着系统主题变化而变化了``如果去掉的话` 程序的最上面的标题栏还是会变,
这个方法已经试过了。

在程序文件上点右键-属性-兼容性-关闭视觉样式。
[/Quote]
完美
luluyy 2012-04-03
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 的回复:]
引用 7 楼 ghypnus 的回复:

win7上面开发的winform程序,拿到xp上变得很难看,而且样式一改就变字体颜色。



那是因为你默认使用了系统风格。

你完全可以自定义风格,这样拿到哪里效果都不会变。
[/Quote]

使用自定义风格的话是不是跟上面那位大鸟说的一样把EnableVisualStyle()去掉?
主要是窗体的标题栏那里还是会变。
mrsupersky 2012-03-24
  • 打赏
  • 举报
回复
自己截个图搞搞吧,很容易实现的。
YapingXin 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 ghypnus 的回复:]

win7上面开发的winform程序,拿到xp上变得很难看,而且样式一改就变字体颜色。
[/Quote]


那是因为你默认使用了系统风格。

你完全可以自定义风格,这样拿到哪里效果都不会变。

youzelin 2012-03-23
  • 打赏
  • 举报
回复
很奇怪,楼主对 Windows 2000 的界面风格情有独钟?我觉得这个不重要吧。你让用户情何以堪?你的想法毕竟是少数,用户会拿到你开发的程序,会怎么想?他们会崩溃的。
wsx309390129 2012-03-23
  • 打赏
  • 举报
回复
panel
  • 打赏
  • 举报
回复
win7上面开发的winform程序,拿到xp上变得很难看,而且样式一改就变字体颜色。
threenewbee 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 luluyy 的回复:]

引用 4 楼 caozhy 的回复:
在Program.cs Main()里面有一个EnableVisualStyle()的方法,确保存在。



把这个代码加上的话就会随着系统主题变化而变化了``如果去掉的话` 程序的最上面的标题栏还是会变,
这个方法已经试过了。
[/Quote]
在程序文件上点右键-属性-兼容性-关闭视觉样式。
luluyy 2012-03-23
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 caozhy 的回复:]
在Program.cs Main()里面有一个EnableVisualStyle()的方法,确保存在。
[/Quote]


把这个代码加上的话就会随着系统主题变化而变化了``如果去掉的话` 程序的最上面的标题栏还是会变,
这个方法已经试过了。
threenewbee 2012-03-22
  • 打赏
  • 举报
回复
在Program.cs Main()里面有一个EnableVisualStyle()的方法,确保存在。
xboxeer 2012-03-22
  • 打赏
  • 举报
回复
你叫做游戏的情何以堪

111,126

社区成员

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

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

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