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

窗体显示问题

楼主luckysym(热带风暴)2002-07-23 19:17:49 在 VB / 基础类 提问

我做了个程序,在托盘了显示图标,并要在双击托盘图标后显示窗体(窗体开始使用Hide方法隐藏),在该窗体的Window   Procedure中接收WM_LBUTTONDBLCLK消息,并用Formq.show,   但窗口并不位于顶层,且在任务兰上闪,不知怎样让窗口置于顶层且不闪?  
   
  部分代码:  
   
  Public   Function   NewWindowProc(ByVal   hwnd   As   Long,   ByVal   Msg   As   Long,   ByVal   wParam   As   Long,   ByVal   lParam   As   Long)   As   Long  
          If   Msg   =   TRAY_CALLBACK   Then  
                  If   lParam   =   WM_LBUTTONDBLCLK   Then  
                          Dim   a   As   Long  
                           
                          Form1.WindowState   =   0  
                          Form1.Show  
                  End   If  
                  If   lParam   =   WM_RBUTTONUP   Then  
                          '   On   right   click,   show   the   menu.  
                          TheForm.PopupMenu   TheMenu  
                          Exit   Function  
                  End   If  
          End   If  
           
          NewWindowProc   =   CallWindowProc(   _  
                  OldWindowProc,   hwnd,   Msg,   _  
                  wParam,   lParam)  
  End   Function 问题点数:50、回复次数:3Top

1 楼zyl910(编程的乐趣在于编程控制硬件,与用图形学实现绚丽效果)回复于 2002-07-23 19:34:34 得分 10

加上   窗体名.ZOrder   试试Top

2 楼YHeng(我来也!!!!!!)回复于 2002-07-23 19:55:30 得分 20

Public   Function   NewWindowProc(ByVal   hwnd   As   Long,   ByVal   Msg   As   Long,   ByVal   wParam   As   Long,   ByVal   lParam   As   Long)   As   Long  
          select   case   Msg    
                        case   TRAY_CALLBACK    
                                select   case   lparam  
                                          case     WM_LBUTTONDBLCLK    
   
                          Form1.WindowState   =   0  
                          Form1.Show  
                   
                                          case   WM_RBUTTONUP    
                                                  TheForm.PopupMenu   TheMenu  
                                                  Exit   Function  
                                end   select  
                        case   else  
  NewWindowProc   =   CallWindowProc(   OldWindowProc,   hwnd,   Msg,wParam,   lParam)  
            end   select  
   
  End   Function  
   
  不知行不行,您自己试试,您也可以在其它的代码中找找有没有错!!!!!!Top

3 楼luckysym(热带风暴)回复于 2002-07-23 20:57:36 得分 0

没用Top

4 楼Chice_wxg(学)(习)回复于 2002-07-23 21:11:40 得分 10

 
   
  Win98   下难以解决(微软说的)  
   
  如果运气好,用   SetForegroundWindow   +   BringWindowToTop   试试  
   
  Top

5 楼fontz(方舟)回复于 2002-07-23 22:17:00 得分 10

解决不了的。第一次运行就是这样,置最顶层也没有用,它的标题栏也是灰的(第一次运行时)。Top

相关问题

  • 显示窗体
  • 窗体显示?
  • 显示窗体
  • 如何显示主窗体?
  • 窗体显示的问题!
  • 问dll中显示窗体
  • 关于窗体显示
  • 窗体显示及隐藏?
  • 显示窗体的问题
  • 窗体渐渐显示?

关键词

  • 窗体
  • newwindowproc
  • lbuttondblclk
  • lparam
  • byval
  • 显示
  • wparam
  • msg
  • wm
  • hwnd

得分解答快速导航

  • 帖主:luckysym
  • zyl910
  • YHeng
  • Chice_wxg
  • fontz

相关链接

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

广告也精彩

反馈

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