窗口一直存在,可以获得句柄但是不显示

C# VS编写 WinForm
一个运行的程序,在键入数字的时候自动跳出一个窗口(Divice),若干秒后,这个窗口就自动消失

我写了一个程序,当这个窗口跳出来时开始计时,消失时结束计时,但是我获得窗口(Divice)句柄的时候发现这个窗口(Divice)一直存在的(不键入数字的时候就不会出现)
问:现在我怎么通过这个窗口(Divice)的出现和消失来计时

0
Rain17610
Rain17610 已解决,我直接用了线程检测句柄,如果检测到,就说明开始计时,并记录DateTime.Now,如果检测不到,就说明消失了,再用dateTime.Now减去刚才的DateTime.Now
3 个月之前 回复

2个回答

你是不是用的form.Hide()
那个只是隐藏不是关闭

要 form.Close()

0
Rain17610
Rain17610 对这个窗口不进行更改,我想知道怎么获取这个窗口是否被隐藏的这样的状态,通过这个状态来计时
9 个月之前 回复

直接给窗口Divice传一个参数或增加属性来计时,比如在窗口load开始计算,close结束计时。

0
Rain17610
Rain17610 怎么传参数或者属性?
9 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
判断特定窗口是否存在、线程中获取获得一个顶层窗口的句柄
1.判断窗口是否还存在:实例: HWND hWnd;//窗口句柄 if(!IsWindow(hWnd))   //检查窗口是否已被关闭 { //处理程序 }2.获得一个顶层窗口的句柄:  函数原型:HWND FindWindow(LPCTSTR IpClassName,LPCTSTR IpWindowName);参数: IpClassName:指向一个以null结尾的、用来指定类名的字符串
根据窗口句柄判断程序运行状态
BOOL CHungDlg::ProcessRunStatus(HWND hwnd) { HINSTANCE hDll = LoadLibrary(_T("user32.dll")); if (NULL != hDll) { typedef BOOL(WINAPI *PROCISHUNGAPPWINDOW)(HWND); PRO
c#查找窗口是否存在
使用spy++查看窗口句柄: (1) 点击 VS 菜单“工具” - “spy++”,启动 spy++。 (2) 点击 spy++ 工具栏中的 望远镜 图标,弹出一个“窗口搜索”的对话框。在“窗口搜索”对话框中,鼠标左键在 查找程序工具 后面的 图标 处按下不放,将此图标拖移到我们想要知道信息的窗口内,再松开鼠标。 查找窗口是否存在: [DllImport("user
emWin对话框接收不到自定义消息
在使用自定义消息时,使用GUI_CreateDialogBox()创建对话框后,无法接收到发送的自定义消息。 解决方法: 1. 创建页面成功后,获取到句柄,再调用WM_SetCallback()设置回调函数,则能成功接收到消息。 2. 需要先调用WM_GetClientWindow()得到客户端窗口的句柄,然后把消息发送给这个句柄。 如下: void _SendKeyvalue(ch...
delphi 根据句柄隐藏和显示窗体(GetWindowLong或者GetWindowInfo)
<br /> 函数原型<br /> <br />  LONG GetWindowLong(HWND hWnd,int nlndex);<br /> <br /> <br />代码如下<br /> <br />    style := GetWindowLong(MyHandle, GWL_STYLE);<br />    if (style and WS_VISIBLE) > 0 then<br />      ShowWindow(MyHandle, SW_HIDE)<br />    else<br /
如何获得窗口句柄以及WIN32+API参考大全
在Windows程序设计领域处于发展初期时,Windows程序员可使用的编程工具唯有API函数。这些函数在程序员手中犹如"积木块"一样,可搭建出各种界面丰富、功能灵活的应用程序。不过,由于这些函数结构复杂,所以往往难以理解,而且容易误用。     随着软件技术的不断发展,在Windows平台上出现了很多优秀的可视化编程环境,程序员可以采用"所见即所得"的编程方式来开发具有精美用户界面和功能的
SDL附着window窗口的方法
SDL是一种既是开源的,也是跨平台的多媒体开发包,在各种平台上应用很广,经常和ffmpeg等解码器同时使用。对于在windows mobile等缺乏通用播放器的平台来说,是一种很好的选择。 网上很多代码,介绍SDL的用法,主要需要注意的情况有3种: 第一: 绑定播放窗口问题: char sdl_var[128]; sprintf(sdl_var, "SDL_WINDOWID=0x%lx"
spy++只能读取主窗口句柄而无法读取到子控件句柄的原因
看望DIRECTUI简介就明白了: DirectUI意为直接在父窗口上绘图(Paint on parent dc directly)。即子窗口不以窗口句柄的形式创建(windowless),只是逻辑上的窗口,绘制在父窗口之上。微软的“DirectUI”技术广泛的应用于Windows XP,Vista,Windows 7,如浏览器左侧的TaskPanel,控制面板导航界面,Media Player...
Qt调用外部程序|通过句柄实现程序最小化到任务栏或者恢复到主界面|读取ini文件
Qt调用外部程序//A.h文件 #include <QProcess> private: QProcess *process1; private slots: void OpenExe1();//A.c文件 MainWindow::MainWindow() { process1 = NULL; connect(ui.btn1, SIGNAL(clicked()), t
窗口句柄HWND和实例句柄HINSTANCE
一个程序可以有多个实例,比如你电脑上可以运行多个QQ程序一样,程序是静态的文件,实例是运行起来的进程;而一个实例可以有多个窗口,程序本身跟窗口没有什么关系,当然你可以认为你的程序里面创建了多个窗口对象。 HWND表示的是窗口的句柄,而HINSTANCE表示的是程序的当前实例的句柄
postman打开后窗口不显示,一直处于最小化
win10多个显示器造成的, 解决办法(1):  强制用切换方式选中postman  ALT + TAB(WIN + TAB) 然后,ALT + 空格键 , 在弹出的菜单中,选择最大化(或移动),此时Postman界面已经显示,再拖动一下,就可以了。 参考:  https://github.com/postmanlabs/postman-app-support/issues/2992 解决...
MFC获取窗口句柄号的六种方法
窗口句柄号
Windows 7桌面显示图标窗口句柄的获取
Windows 7下,我们取桌面图标窗口的句柄使用以下语句   在windows XP时代,我们获取桌面图标窗口的句柄往往用一下语句: HWND hwndParent = ::FindWindow( "Progman", "Program Manager" ); HWND hwndSHELLDLL_DefView = ::FindWindowEx( hwndParent
windows如何根据句柄hwnd显示和隐藏窗口
第一步,如何获取句柄? 答案:通过FindWindow函数获取,参数有两个,分别为窗口名和窗口所属类的类名,输入一个即可,另一个可以为NULL。返回值是HWND类型。需要的头文件是#include &amp;lt;Windows.h&amp;gt;,库为user32.dll。 第二步,如何通过句柄显示或者隐藏窗口? 答案,有2种方法。 1: // 显示窗口 ShowWindow(hWnd, SW_SH...
获取窗口的句柄方法总结
 句柄获取方法(获取该窗口的句柄后,即可向该窗口类类发送消息、处理程序): 例如:::PostMessage("句柄", WM_USER_DRAWVIEWPIC_EDS, 0, 0); 0。获取所在类窗口的句柄: this->m_hwnd 1。主窗口的句柄: 无论在主窗口类内,还是子窗口类内,获取主窗口句柄的方法: AfxGetMainWnd()->m_hWnd,
c# 窗口句柄问题(转)
1、如何获得一个窗口的句柄?     例如获取窗口PictureBox控件(其他控件也可以)的句柄, IntPtr handle = pictureBox.Handle; 2、注意:窗口创建和窗口创建完毕即有句柄完全是两回事!!!     窗口创建时,窗口并没有创建句柄,只有Application.Run(form)或者form.Show()之后才有句柄,即窗口只有显示或者启动消息循环后才
VB 动态获取屏幕任意控件句柄信息
可以获得桌面任意控件句柄,种类,父窗口句柄,子窗口句柄
关于有窗口句柄和无窗口句柄的截图
<br />C#里面提供了CopyFromScreen的函数,可以方便地实现屏幕截图,然而这只是针对有窗口句柄的的,像迅雷7、wpf等无句柄窗口是无法截取的,代码如下,可以试一下:<br /> <br /> //不用Dll切图,但是会切不到悬浮窗口<br />        private Bitmap CutImageWithoutDll()<br />        {<br />            int width = Screen.PrimaryScreen.Bounds.Width;<br
VC++中,获取窗口句柄的常用方法
AfxGetMainWnd AfxGetMainWnd获取自身窗口句柄 HWND hWnd = AfxGetMainWnd()->m_hWnd; GetTopWindow 函数功能:该函数检查与特定父窗口相联的子窗口z序(Z序:垂直屏幕的方向,即叠放次序),并返回在z序顶部的子窗口的句柄。 函数原型:HWND GetTopWindow(HWND hWnd); 参数:   hW
通过句柄获取窗口名并隐藏窗口和任务栏图标
通过API函数穷举得到可视窗口的句柄,通过句柄获得对应窗口标题并显示在list中,在list中钩选相应项,则可隐藏窗口和窗口在任栏的图标.去掉对就项的钩则可使其恢复.程序主窗口也能隐藏,并且可通过热键ALT+F7将其唤出.并只允许程序只运行一个实例.
C++工作笔记-Windows下查找窗口句柄并让其显示在桌面
程序运行截图如下:此处分2种情况,1.句柄处于最小化,2.句柄处于非最小化。代码如下:#include &amp;lt;windows.h&amp;gt; #include &amp;lt;iostream&amp;gt; using namespace std; int main(){ HWND hWnd = FindWindow(NULL, L&quot;Qt 助手&quot;); if (IsIconic(hWnd)){ cout...
qt获取窗口句柄来显示图片
winId() 函数能够返回 当前Widget的HWND句柄,我想通过这个窗口句柄实现额外的操作,比如绘制图像或者将句柄传递给第三方功能库操作。 下面的程序是我的Demo程序,我想在QLable上通过HWND句柄绘制一条线,但结果是,线看不到,这是为什么呀? #include #include class MyLabel : public QLabel { public:
matlab显示图形窗口解决方案
%matlab 2010a >>figure %后没出现图形显示窗口直接plot也没有显示 %输入如下语句显示图形窗口,关掉matlab后重新打开,恢复正常可以直接plot close all x = linspace(0,2*pi,100); y = sin(x); figure,plot(x,y);
Windows运行机理——窗口和句柄
Windows运行机理这系列文章都是来至于《零基础学Qt4编程》——吴迪,个人觉得写得很好,所以进行了搬运和个人加工1. 窗口窗口是Windows应用程序中一个非常重要的元素,一个Windows应用程序至少要有一个窗口,称为主窗口,窗口是指现在是屏幕上面的一快矩形区域,是Windows应用程序与用户进行交互的接口。利用窗口,可以接收用户的输入及显示输出。一个应用程序窗口通常包含标题栏,菜单栏,系统...
使用MoveWindow()函数来移动指定句柄的窗口在屏幕中的显示位置及这个窗口的大小
#include "stdafx.h" #include int _tmain(int argc, _TCHAR* argv[]) {  HWND wnd;  wnd=FindWindow(NULL, _T("MFC类库详解"));  MoveWindow(wnd, 200, 200, 300, 300, TRUE);      return 0; } //MoveWi
启动tomcate服务是,不显示dos命令窗体(后台运行服务)
1:找到安装路径 ,TOMCAT_HOME\bin\setclasspath.bat 2:在文件的底部找到以下内容:set _RUNJAVA=&quot;%JRE_HOME%\bin\java&quot;  3:并修改为: set _RUNJAVA=&quot;%JRE_HOME%\bin\javaw&quot;   测试可用...
如何判断一个句柄是否有效
判断句柄 handle 的有效性方法有两种: 1. hwnd==INVALID_HANDLE_VALUE  获得句柄并判断它们是否相等就可以了 2. 如果想验证HANDLE有效性可以使用GetHandleInformation或者DuplicateHandle 等函数 这两个函数复制或者查询非法Handle时,将返回错误
文件存在,但是无法显示的原因
今天遇到一个问题:在linux下,通过telnet登陆arm板,终端显示某个文件是存在的,我是想通过window下的WinSCP软件来获取文件,    在桌面上却没有显示文件,这下自己郁闷了.    有大神指点,终于知道了原因:其实还是由于不同系统之间,所导致的现象.在不同的系统之间,相互传输文件,最好通过压缩文件来传输,    这样,可以避免很多不必要的问题.
springcloud服务已经关但是Eureka还是显示up
该状态持续很久,访问该服务也返回错误,但在注册中心界面,该服务却一直存在,且为UP状态,并且在大约十分钟后,出现一行红色大字:EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE LESSER THAN THRESHOLD AND HENCE THE INSTANC
MFC+OpenCV获得动态创建窗口的句柄
//获得动态创建窗口的句柄 cvNamedWindow(“Mywindow”, 0); HWND  hWnd = (HWND)cvGetWindowHandle(“Mywindow”); //获得动态创建窗口父窗口的句柄 HWND hParent = ::GetParent(hWnd);
python得到qq句柄,并显示在前台
# 导入模块 import win32gui win = win32gui.FindWindow(None, u'张三') # 将窗口调到前台 win32gui.ShowWindow(win, win32con.SW_SHOWNORMAL) # 得到窗口左上角右下角位置,如(954, 299, 1470, 798) winRect= win32gui.GetWindowRect(win) # 将剪
C#利用句柄操作窗口
C#利用句柄操作窗口
C#代码执行时,使Dos窗口一直保持可见的方法
方法1:运行程序的时候,不要用F5键执行,用Ctrl+F5执行,它的意思是“启动执行(不调试)”,这样就不会一闪而过了。 方法2:在你的代码的最后加上这句 Console.ReadLine(); 也就是“等待用户输入”,这样DOS窗口直到你敲击回车键才会关闭 方法3:在程序最后加上一句Console.ReadKey();这样DOS窗口接收一个字符才会退出.方法4:在CMD下运行程序. h
[VB] 显示所有窗口(含隐藏窗口)的句柄和标题.rar
[VB] 显示所有窗口(含隐藏窗口)的句柄和标题
【求助交流】Qt编译后可运行,但是窗口不显示
今天继续学习
【VS2010 C# 代码】获取鼠标所在位置的窗口句柄名称和文字及位置
Microsoft Visual Studio 2010做的C#获取鼠标所在位置的窗口句柄名称和文字及位置实例,主要代码: [StructLayout(LayoutKind.Sequential)]//定义与API相兼容结构体,实际上是一种内存转换 public struct POINTAPI { public int X; public int Y; } [DllImport("user32.dll", EntryPoint = "GetCursorPos")]//获取鼠标坐标 public static extern int GetCursorPos( ref POINTAPI lpPoint ); [DllImport("user32.dll", EntryPoint = "WindowFromPoint")]//指定坐标处窗体句柄 public static extern int WindowFromPoint( int xPoint, int yPoint ); [DllImport("user32.dll", EntryPoint = "GetWindowText")] public static extern int GetWindowText( int hWnd, StringBuilder lpString, int nMaxCount ); [DllImport("user32.dll", EntryPoint = "GetClassName")] public static extern int GetClassName( int hWnd, StringBuilder lpString, int nMaxCont ); [DllImport("user32.dll")] [return: MarshalAs(UnmanagedType.Bool)] public static extern bool GetWindowRect(IntPtr hWnd, ref RECT lpRect); [StructLayout(LayoutKind.Sequential)] public struct RECT { public int Left; //最左坐标 public int Top; //最上坐标 public int Right; //最右坐标 public int Bottom;//最下坐标 }
取当前窗口句柄+鼠标坐标+取色
包括挡墙窗口句柄,颜色RGB,方便你抓图之类的。后期将做一款带截图的软件出来分享。本软件的源码参考觅风教程中的做法!
VB获取指定扩展名的关联程序图标(只要扩展名就行)-代码示例
网上找不到的哈,本人自己写的,可以获得图标和句柄,用到的下载不后悔
c# 窗口句柄问题 。
1、如何获得一个窗口的句柄?     例如获取窗口PictureBox控件(其他控件也可以)的句柄, [csharp] view plain copy IntPtr handle = pictureBox.Handle;   2、注意:窗口创建和窗口创建完毕即有句柄完全是两回事!!!     窗口创建时,窗口并没有创建句柄,只有Ap
android 布局文件明明存在,却报错
这是一个很坑的问题有木有!小白伤不起有不有,复制文件的时候没有把R文件导进来有有木有!!
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 python句柄教程 区块链价格一直跌