如题
谢谢

解决方案 »

  1.   

    我意思就是
    模态的是否可以在调dlg.DoModal()后对话框的界面是隐藏的
      

  2.   

    ^_^,楼主真有意思,我记得在一本书里看到“对于c++程序员来说没有什么不可能的”,那个意思实说有些人通过指针变换访问原来本事const属性的东东(本意是批评某些人不安套路出牌的),看来楼主也有一些这个意思啊。
      

  3.   

    隐藏的话,
    用ShowWindow(SW_HIDE)就行了
    但是...
    你还得用什么能恢复它才行,不然怎么输入
      

  4.   

    ^_^,楼主真有意思,我记得在一本书里看到“对于c++程序员来说没有什么不可能的”,那个意思实说有些人通过指针变换访问原来本事const属性的东东(本意是批评某些人不安套路出牌的),看来楼主也有一些这个意思啊。
    --------------------
    我的程序里面的处理要建立在dlg.DoModal()后
    但是我的程序一开始又不能够有界面所以就是这样
      

  5.   

    隐藏的话,
    用ShowWindow(SW_HIDE)就行了
    ----------------
    dlg.DoModal()后界面已经出现了
    我是不能够要这个界面出现
      

  6.   

    可以在OnInitDialog里用MoveWindow把窗口移到桌面外面,比如移到-1000,-1000,然后处理完了再移回来。
      

  7.   

    设置dlg的大小为0,处理完后用movewindow改变dlg的大小做个参考,没试过,应该可以的
      

  8.   

    我在OnInitDialog里面用MoveWindow(0,0,0,0);没有界面了,但是任务条中有,怎么把任务条中的去掉?
      

  9.   

    你要明白模态对话框和非模态对话框的根本区别。
    模态对话框domodal后,阻塞原进程,也就是说,原进程已经不能做任何事了。
    所以说你的需求是不能实现的,唯有改用非模态对话框才行。
      

  10.   

    我也有类似的问题.
    我想把一个文件显示在一个对话框中的List Control中,这个对话框又是通过另一个对话框的OK键来启动,这样该怎样实现?
    谢谢各位大侠!!
      

  11.   

    你要明白模态对话框和非模态对话框的根本区别。
    模态对话框domodal后,阻塞原进程,也就是说,原进程已经不能做任何事了。
    所以说你的需求是不能实现的,唯有改用非模态对话框才行。
    -------------
    我在OnInitDialog里面用MoveWindow(0,0,0,0);没有界面了,
    已经实现了
      

  12.   

    为什么在OnInitDialog
    中用ShowWindow(SW_HIDE)没有效果
    我想用ShowWindow(SW_HIDE);把任务条中的隐藏掉
      

  13.   

    但是在OnInitDialog中用
    ShowWindow(SW_MINIMIZE);
    可以
    一开始就是最小化的
    但是任务条上有
    我要不任务条上的也去掉
      

  14.   

    但是任务条上有
    我要不任务条上的也去掉
    --------------------------
    修改风格
    OnInitDialog中加上:
    DWORD dwStyle = GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE);
    dwStyle &= ~WS_EX_APPWINDOW;
    dwStyle |= WS_EX_TOOLWINDOW; SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,dwStyle); ShowWindow(SW_MINIMIZE);就可以实现你的隐藏了
      

  15.   

    修改风格
    OnInitDialog中加上:
    DWORD dwStyle = GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE);
    dwStyle &= ~WS_EX_APPWINDOW;
    dwStyle |= WS_EX_TOOLWINDOW; SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,dwStyle); ShowWindow(SW_MINIMIZE);就可以实现你的隐藏了
    -------------------
    任务条上没有了
    但是有个最小化框啊,我那个也不要
      

  16.   

    应该没有的, 
    你在对话框资源中,属性里面 Extend Style把ToolWindow勾上就可以看到已经没有最小化框了
    再说都已经隐藏了,哪儿看得到?
      

  17.   

    应该没有的, 
    你在对话框资源中,属性里面 Extend Style把ToolWindow勾上就可以看到已经没有最小化框了
    再说都已经隐藏了,哪儿看得到?
    ----------------
    有的
    任务栏的上面有一个最小化后的标题栏
    就想你开qq 没有登录前你把他最小化一样
      

  18.   

    那个放在开始菜单上方的哪种最小化是你别的什么代码才有的,本来默认应该不是在哪儿
    ---------
    不是的,我在
    OnInitDialog中加上:
    DWORD dwStyle = GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE);
    dwStyle &= ~WS_EX_APPWINDOW;
    dwStyle |= WS_EX_TOOLWINDOW; SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,dwStyle); ShowWindow(SW_MINIMIZE);

    开始菜单上方就有了最小化,我现在不要有那个
    但是不加上面的代码,任务栏上又有
      

  19.   

    ming6() 
    你要明白模态对话框和非模态对话框的根本区别。
    模态对话框domodal后,阻塞原进程,也就是说,原进程已经不能做任何事了。
    所以说你的需求是不能实现的,唯有改用非模态对话框才行。
    -------------
    我在OnInitDialog里面用MoveWindow(0,0,0,0);没有界面了,
    已经实现了
    请问一下,你的线程阻塞问题怎么解决的啊???我觉得虽然对话框的大小设为零了,但仍然不会激活父窗口吧???
      

  20.   

    我在OnInitDialog里面用MoveWindow(0,0,0,0);没有界面了,
    已经实现了
    请问一下,你的线程阻塞问题怎么解决的啊???我觉得虽然对话框的大小设为零了,但仍然不会激活父窗口吧???
    -----------------------------------
    OnInitDialog是在阻塞之前调用的
      

  21.   

    新开一个线程44看,或者redrowwindow
      

  22.   

    *********************************************************************
    *********************************************************************
    如何使得
    DoModal后产生的对话框一开始就是隐藏的
    因为有托盘图标
    只有我需要显示对话框时,我去点托盘图标让它显示怎么让它一开始就是隐藏的?为什么在OnInitDialog
    中用ShowWindow(SW_HIDE)没有效果但是在OnInitDialog中用
    ShowWindow(SW_MINIMIZE);
    可以
    但是这个时候
    任务条上有显示(我也不需要任务条上的显示)OnInitDialog中加上:
    DWORD dwStyle = GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE);
    dwStyle &= ~WS_EX_APPWINDOW;
    dwStyle |= WS_EX_TOOLWINDOW;SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,dwStyle);ShowWindow(SW_MINIMIZE);

    任务条上的显示到是没有了
    但是
    开始菜单上方又出现了最小化的标题栏(这个也不要)这个问题谁可以搞定
    单独送50分!谢谢了
    *********************************************************************
    *********************************************************************
      

  23.   

    *********************************************************************
    *********************************************************************
    如何使得
    DoModal后产生的对话框一开始就是隐藏的
    因为有托盘图标
    只有我需要显示对话框时,我去点托盘图标让它显示怎么让它一开始就是隐藏的?为什么在OnInitDialog
    中用ShowWindow(SW_HIDE)没有效果但是在OnInitDialog中用
    ShowWindow(SW_MINIMIZE);
    可以
    但是这个时候
    任务条上有显示(我也不需要任务条上的显示)OnInitDialog中加上:
    DWORD dwStyle = GetWindowLong(GetSafeHwnd(),GWL_EXSTYLE);
    dwStyle &= ~WS_EX_APPWINDOW;
    dwStyle |= WS_EX_TOOLWINDOW;SetWindowLong(GetSafeHwnd(),GWL_EXSTYLE,dwStyle);ShowWindow(SW_MINIMIZE);

    任务条上的显示到是没有了
    但是
    开始菜单上方又出现了最小化的标题栏(这个也不要)这个问题谁可以搞定
    单独送50分!谢谢了
    *********************************************************************
    *********************************************************************
      

  24.   

    在OnInitDialog()中
    SetTimer(5001,500,NULL);
    然后在OnTimer()中
    ShowWindow(SW_HIDE);原理就是因为在OnInitDialog中执行ShowWindow(SW_HIDE)无效,所以移到OnInitDialog执行完毕后来做,而用SetTimer即可延迟执行.
      

  25.   

    最简单的办法就是把对话框的属性项里面的visable项前的勾去掉就行了
      

  26.   

    最简单的办法就是把对话框的属性项里面的visable项前的勾去掉就行了
    -------------------------
    你试下看看行不行?
      

  27.   

    在OnInitDialog()中
    SetTimer(5001,500,NULL);
    然后在OnTimer()中
    ShowWindow(SW_HIDE);原理就是因为在OnInitDialog中执行ShowWindow(SW_HIDE)无效,所以移到OnInitDialog执行完毕后来做,而用SetTimer即可延迟执行.
    ------------------------
    只有这种方法吗?
    我试过这种方法,有延迟,就是会出现一下再消失
    我就想根本不要出现还有为什么在OnInitDialog中执行ShowWindow(SW_HIDE)无效
    但是执行ShowWindow(SW_MINIMIZE)却可以的