message-loop

    0热度

    1回答

    我正在阅读关于传递消息的事件循环,因为我必须为我正在处理的项目设计一个循环。为了更好地理解它,我试图将它类比于其他我认识的更好的东西,以帮助我理解。 CPU的读取/执行周期是否与事件循环软件结构相当?如果不是,主要区别是什么(当然,除了直接存储在硬件中)。谢谢。

    0热度

    1回答

    我正在编写一个封装了一些媒体基础功能的库。我希望能够通过回调网络摄像头与系统连接/断开连接的方式通知图书馆用户。 MSDN describes how to know when a camera is disconencted,但它使用消息循环让你知道这一点。我不太了解Windows消息循环,但是我在this MSDN article中读到的内容告诉我必须有一个窗口才能有消息循环,这对于库是不可接

    2热度

    1回答

    所以正如标题所暗示的,我试图在类库中使用WebBrowser控件。我已经经历了几个SO问题,如this excellent post,但在我的情况下,唯一的事情是WebBrowser对象必须在应用程序的整个生命周期内保持活动状态,并保持它的状态/ Cookie跨越图书馆客户不时会进行的不同调用。 我已确认WebBrowser控件不会执行导航,除非它创建的线程包含消息泵。但是,只要我引入消息泵,代码

    0热度

    1回答

    我创建了一个MFC对话框应用程序。 现在我想使用一个messageloop,但我找不到它。我读过mfc会为我创建它,但它会隐藏起来。所以我如何操作messageloop? 我需要messageloop从我的托盘图标接收事件,我为该应用程序创建的。 ,这样我可以使用类似的东西: long CALLBACK WndProc(HWND hWnd, UINT nMsg, UINT wParam, LONG

    0热度

    1回答

    我有一个MFC应用程序。我想统计每个按钮的点击次数,包括按钮ID和时间。我可以在CWinApp::PreTranslateMessage(MSG* pMsg)或CWnd::PreTranslateMessage(MSG* pMsg)吗?如何?

    0热度

    1回答

    我有一个简单的WPF窗体与文本框和按钮,失去焦点它只是简单地显示一个消息框。 我的代码看起来像这样 private void TextBox_LostFocus(object sender, RoutedEventArgs e) { Debug.WriteLine("Lost Focus 1"); Dispatcher.BeginInvoke(new Action

    1热度

    1回答

    我有一个winforms应用程序调用Application.DoEvents()。现在应用程序在这个方法被调用时冻结(没有意外)。 但是,这只发生在一些机器上。这是公平的说,这是由于机器本身,还是仍然是代码/ application.doevents()?在这种情况下,应该重构使用backgroundworker。 这是机器/环境问题还是oppurtunity使用backgroundworker?

    0热度

    1回答

    当使用Win32 API消息循环(或任何更高级别的抽象如System.Windows.Forms.IMessageFilter)来获取消息时,如何找出哪个/哪个控件/哪个组件/哪一段代码发布了WM_MOUSEMOVE? 这是否甚至在Win32环境中有意义?类似于.NET事件中的object sender。 我检查了WM_MOUSEMOVE的文档,我找不到任何东西。至今我还没有广泛使用过Win32

    0热度

    2回答

    我已经学会了一些关于Win32 API的知识,但现在我想学习MFC。在我的电子书中,他们说CWinApp类管理应用程序的主线程,但是我找不到类似GetMessage,DispatchMessage这个类的函数。那么它如何开始消息循环? 有人为我解释这个请。对不起,我是MFC中的新手,我的英文不好。 我在哪里可以找到关于MFC在Visual Studio中的一些电子书/教程?

    -1热度

    1回答

    在我将它们发送到我的窗口过程之前,我想在消息循环中读出消息。我尝试阅读的大多数消息都被正确读取,但是当我关闭窗口时,WM_CLOSE或WM_DESTROY消息无法读取,因为它好像从未收到过。这是我做的: void Framework::Run(){ while(running){ MSG msg; while(PeakMessage(&msg, NULL, 0, 0)){