CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

窗体

楼主xyxy617(年糕)2002-05-20 15:41:37 在 VB / 基础类 提问

我在一个最大化窗体form1中加载一个工具窗体form2,当我点击form1时form2却不见了 问题点数:20、回复次数:16Top

1 楼YHeng(我来也!!!!!!)回复于 2002-05-20 15:47:55 得分 0

form2.show   ,form1Top

2 楼mornwoo(爱永恒伤离别)回复于 2002-05-20 15:50:49 得分 0

form2在form1后边!  
  使用模式方式show   form2!!   保证form2不被form1遮盖!Top

3 楼naomi77(naomi77)回复于 2002-05-20 15:51:54 得分 0

form1把form盖住了,自然看不见了  
  方法是在加载form2时卸载form1,在卸载form1时卸载form2Top

4 楼xyxy617(年糕)回复于 2002-05-20 15:54:37 得分 0

我是要两个窗体都能同时可见而不切换Top

5 楼sunxl(小呆)回复于 2002-05-20 15:58:53 得分 0

我有办法!Top

6 楼naomi77(naomi77)回复于 2002-05-20 16:05:35 得分 0

好像是用zorder方法吧Top

7 楼qbilbo(风之兄)回复于 2002-05-20 16:07:10 得分 0

最好将form1设为MID窗体,form2设为MDI子窗体。  
  或:form2.show   0,form1  
  如果form2是工具窗体,当form1被移动时,就会很难看了,推荐用第一种方法。Top

8 楼qbilbo(风之兄)回复于 2002-05-20 16:08:40 得分 0

最好将form1设为MDI窗体,form2设为MDI子窗体。  
  或:form2.show   0,form1  
  如果form2是工具窗体,当form1被移动时,就会很难看了,推荐用第一种方法。Top

9 楼naomi77(naomi77)回复于 2002-05-20 16:09:43 得分 0

在form1的   form_click中输入如下代码:  
  Private   Sub   Form_Click()  
  Form2.ZOrder   front  
  End   Sub  
  Top

10 楼sunxl(小呆)回复于 2002-05-20 16:15:32 得分 20

我有两点建议  
   
  一:  
          让窗体二永远在上  
   
   
  在form2   里写  
   
  Private   Const   SWP_NOSIZE   =   &H1  
  Private   Const   SWP_NOMOVE   =   &H2  
  Private   Declare   Function   SetWindowPos   Lib   "user32"   (   _  
  ByVal   hwnd   As   Long,   _  
  ByVal   hWndInsertAfter   As   Long,   _  
  ByVal   X   As   Long,   _  
  ByVal   Y   As   Long,   _  
  ByVal   cx   As   Long,   _  
  ByVal   cy   As   Long,   _  
  ByVal   wFlags   As   Long)   As   Long  
  Private   mbOnTop   As   Boolean  
  Private   Property   Let   OnTop(Setting   As   Boolean)  
  If   Setting   Then  
  SetWindowPos   hwnd,   -1,   0,   0,   0,   0,   SWP_NOMOVE   Or   SWP_NOSIZE  
  Else  
  SetWindowPos   hwnd,   -2,   0,   0,   0,   0,   SWP_NOMOVE   Or   SWP_NOSIZE  
  End   If  
  mbOnTop   =   Setting  
  End   Property  
   
   
   
   
  在你想要的地方   加上   form2.ontop=true(在最上面)  
  form2.ontop=false(恢复)  
   
   
   
  二:  
   
  我建议你用   mid   窗口   好好研究一下   mid窗口的用法  
  Top

11 楼pl5th2001(白牙)回复于 2002-05-20 16:15:42 得分 0

form1设为MID窗体,form2设为MDI子窗体Top

12 楼naomi77(naomi77)回复于 2002-05-20 16:27:00 得分 0

sunxl的代码经调试和我的效果完全相同,而我的代码只要一句。另外,sunxl的ontop函数应该设为public   ,否则在form1的click事件中无法调用Top

13 楼sunxl(小呆)回复于 2002-05-20 16:44:51 得分 0

我比较推荐   mid窗口Top

14 楼luosidao(螺丝刀)回复于 2002-05-20 16:47:50 得分 0

mdiTop

15 楼sunxl(小呆)回复于 2002-05-20 16:53:21 得分 0

改   public   是对的  
  但   naomi77(naomi77)   和   我的代码功能是不一样的  
  这个得让他自己   去体会    
   
  我还是比较推荐   mid窗口Top

16 楼naomi77(naomi77)回复于 2002-05-20 16:55:04 得分 0

看到这么多人推荐mdi,我倒有点动摇了。我想问问mdi到底强在哪儿呢?Top

17 楼KAIBate(凯)回复于 2002-05-20 17:36:53 得分 0

呵呵,你要的功能它都实现了,不就是强么?:)Top

相关问题

  • 窗体
  • 窗体
  • 窗体
  • 父窗体和子窗体
  • 父窗体与子窗体
  • 全屏窗体?
  • 有关窗体。。。
  • 透明窗体
  • 显示窗体
  • vb窗体

关键词

  • 代码
  • 卸载
  • 窗体
  • ontop
  • swp
  • mdi
  • form
  • nomove
  • byval
  • mid

得分解答快速导航

  • 帖主:xyxy617
  • sunxl

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo