请问怎样在应用程序启动时就隐藏任务栏图标
请问怎样在应用程序启动时就隐藏任务栏图标,不用写代码的,
是模式对话框,谢谢!!
问题点数:0、回复次数:10Top
1 楼idAnts(此广告位招租)回复于 2005-06-01 12:59:32 得分 0
美得你,还想不写代码,在初始化里加:
long lExStyle = ::GetWindowLong(m_hWnd, GWL_EXSTYLE);
lExStyle &= ~WS_EX_APPWINDOW; //
lExStyle |= WS_EX_TOOLWINDOW; //
::SetWindowLong(m_hWnd, GWL_EXSTYLE, lExStyle);
ShowWindow(SW_SHOWNA);Top
2 楼vcmute(BCare4 H1Rest Good9!)回复于 2005-06-01 13:04:22 得分 0
ModifyStyleEx(WS_EX_APPWINDOW,0);//主要是WS_EX_APPWINDOW无法通过设置实现
WS_EX_TOOLWINDOW是可以通过Dialog属性中的Extended Styles设置Top
3 楼zqh7850430(别安一族)回复于 2005-06-01 15:51:56 得分 0
谢谢各位,
不过,我看了张勇的Myicq源代码都没有各位所说的一些代码啊,
不知道,他怎么做的啊,真神了,Top
4 楼idAnts(此广告位招租)回复于 2005-06-01 16:11:55 得分 0
他用什么做的?是vc里基于对话框向导做的框架吗?Top
5 楼vcmute(BCare4 H1Rest Good9!)回复于 2005-06-01 22:21:43 得分 0
还有的是将m_hWnd对应到新建的CMainFrame上,如
CMainFrame* pFrame = new CMainFrame;
m_pMainWnd = pFrame;
pFrame->LoadFrame(IDR_MAINFRAME, WS_OVERLAPPED, NULL, NULL);
CMyDlg dlg(pFrame);
而该CMainFrame也是用WS_EX_TOOLWINDOW
BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
{
if (CFrameWnd::PreCreateWindow(cs)) {
cs.dwExStyle |= WS_EX_TOOLWINDOW;
return TRUE;
}
return FALSE;
}Top
6 楼zqh7850430(别安一族)回复于 2005-06-02 08:36:37 得分 0
他的程序中我加入了, ModifyStyleEx(0, WS_EX_APPWINDOW);
这条语句才会在任务栏显示出窗口啊,
只要这个语句就可以了,不知道为什么??
是不是他在哪里选项选了什么啊??
他是vc6里基于对话框向导做的框架,没错,不是基于文档的,Top
7 楼zqh7850430(别安一族)回复于 2005-06-02 08:40:39 得分 0
BOOL CMyDlg::OnInitDialog() //这些都上他的代码
{
CDialog::OnInitDialog();
ModifyStyleEx(0, WS_EX_APPWINDOW); //就是这个了,我注释掉,任务栏图标就没了,
要有这行才有图标,其他在任何地方都找不到有隐藏图标的痕迹,
// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
Top
8 楼zqh7850430(别安一族)回复于 2005-06-02 08:42:02 得分 0
但是,我拷贝了他的一些代码来看看,
不用这句都能显示图标啊,Top
9 楼pomelowu(羽战士)回复于 2005-06-02 09:38:52 得分 0
看看他这个dialog怎么创建的,有没有父窗口Top
10 楼guosx(玄远)回复于 2005-06-02 15:06:56 得分 0
不写代码也完全可以,我是在单文档的情况下试的,在MainFrm.cpp中的creat函数中有创建工具条的代码段,你只要把WS_VISIBLE去掉就可以了。Top




