状态栏 颜色改变没反应

mm407 2010-12-09 12:07:14
我用MFC建了个dialog的程序。
想在dialog下面加个状态栏,用了API ::CreateStatusWindow(),
可是我在InitDialog()里面::SendMessage(hstatus, SB_SETBKCOLOR, 0, RGB(...))为什么没反应呢?
...全文
109 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Eleven 2010-12-31
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 mm407 的回复:]
引用 1 楼 a19860903 的回复:

我在OnInitDialog()加入如下代码发现可以啊
HWND hstatus = ::CreateStatusWindow(
WS_CHILD|WS_VISIBLE|WS_BORDER,
"aa",
m_hWnd,
100);
::SendMessage(hstatus, SB_SETBKCOLOR, 0, RGB(255,0,25……
[/Quote]
VS2008下也是可以的
HWND hstatus = ::CreateStatusWindow(
WS_CHILD|WS_VISIBLE|WS_BORDER,
_T("aa"),
m_hWnd,
100);
::SendMessage(hstatus, SB_SETBKCOLOR, 0, RGB(255,0,255));
向立天 2010-12-31
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖

相关规定详见界面界面版关于版主结帖工作的具体办法
zzw820626 2010-12-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 a19860903 的回复:]

我在OnInitDialog()加入如下代码发现可以啊
HWND hstatus = ::CreateStatusWindow(
WS_CHILD|WS_VISIBLE|WS_BORDER,
"aa",
m_hWnd,
100);
::SendMessage(hstatus, SB_SETBKCOLOR, 0, RGB(255,0,255));
[/Quote]、
+
疯狂石头_ 2010-12-09
  • 打赏
  • 举报
回复
我在OnInitDialog()加入如下代码发现可以啊
HWND hstatus = ::CreateStatusWindow(
WS_CHILD|WS_VISIBLE|WS_BORDER,
"aa",
m_hWnd,
100);
::SendMessage(hstatus, SB_SETBKCOLOR, 0, RGB(255,0,255));
yuanmoren 2010-12-09
  • 打赏
  • 举报
回复
自己弄条Static控件
然后OnCtrlColor里把它的颜色改为背景色就行了
mm407 2010-12-09
  • 打赏
  • 举报
回复
找到原因了,
vc6.0默认是ansi 环境,而vs2008默认是unicode
在ansi下面可以改变颜色,unicode这样做就没反应。
谁能解释下,unicode下面应该怎么做?
mm407 2010-12-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 a19860903 的回复:]

我在OnInitDialog()加入如下代码发现可以啊
HWND hstatus = ::CreateStatusWindow(
WS_CHILD|WS_VISIBLE|WS_BORDER,
"aa",
m_hWnd,
100);
::SendMessage(hstatus, SB_SETBKCOLOR, 0, RGB(255,0,255));
[/Quote]

我试了下,为什么在vc6.0里面可颜色就变了,在vs2008里面就没用呢?????

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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