http://www.cnblogs.com/Jekhn/archive/2012/08/25/2656656.html 线程,消息函数,SetWindowPos设置窗体位置 if WaitForSingleObject(FEvent,FInterval)=WAIT_OBJECT_0 then用法 //Main Form http://www.cnblogs.com/Jekhn/archive/2012/08/25/2656656.html unit unitMain; interface us…
Windows GUI採用基于事件驱动的编程模型,其实差点儿全部的界面库都是这样做的.在纯粹的Window32 SDK编程时代.人们还能够搞懂整个Windows窗口创建和消息的流通过程.可是在如今各种框架的包装下非常多在Window32 SDK下非常明显易懂的东西显得不是那么简单了.本文力图去繁求简,教你看懂全部框架的基本构造.而其实对于了解这一切的人来说.这些界面框架的设计都是如出一辙的,希望看完本文.再去看常见的MFC/WTL等框架时,不会再认为有不论什么的不适. C程序的处理办法 1.基本…
经常有人问关于模态对话框和系统菜单内部实现原理方面的问题, 因为系统通过API隐藏了太多细节,这2个问题确实令初学者甚至是有经验的开发者困扰, 下面是我个人的一些经验总结. 先说模态对话框,外部看模态对话框其实就是Dialog弹出以后函数(或者说调用栈call stack)不直接返回, 而是要让你做出选择后关闭Dialog, 然后程序再继续往下执行.在你关闭Modal Dialog之前, 你不能做其他操作.下面是我自己模拟模态对话框行为的代码: #define MODAL_DLG_EXIT_NO…
使用C#创建窗体应用程序的基本步骤: (1)创建项目: (2)用户界面设计: (3)属性设置: (4)编写程序代码: (5)保存.调试.运行: 例题:设计歌曲列表界面,效果如下: 第一步:创建项目: 文件→新建→项目:选择“项目类型”为Visual C#,“模板”为Windows窗体应用程序: 输入名称“例1-4”:选择存放路径“H:\C#程序”:选择“创建新解决方案”: 第二步:用户界面设计:(视图→工具箱) 在工具箱中双击“label”添加标签:双击“listbox”添加列表框. <以上具体…
java实现简单窗体小游戏----球球大作战需求分析1.分析小球的属性: ​ 坐标.大小.颜色.方向.速度 2.抽象类:Ball ​ 设计类:BallMain—创建窗体 ​ BallJPanel—画小球 ​ BallAndBall—处理小球之间的关系 3.流程: ​ 1)小球的绘制 ​ 2)产生小球,让一个小球进行运动,多个小球的运动 ​ 3)小球进行碰撞 ​ 4)实现大球吃小球 源代码如下:Ball.java import java.awt.Color;import java.awt.Font…
适用:h5+jquery,移动网页最佳 最近在写个简单的公众号页面,前端验证时有些信息要提示,很简单的需求实在不想找啥现成的轮子,又不至于用alert这么粗暴,遂写了个非常简单的消息框,效果如图: 特点: 有黑层遮罩 点击消失,无论是点消息框还是外面 用法: //定义函数.我个人还是习惯PascalCase命名 function MsgBox(msg,title) { $('<div onclick="$(this).remove();"style="z-index:9…
#include<windows.h>#include<stdio.h>LRESULT CALLBACK WinSunProc(HWND hwnd,UINT uMsg,WPARAM wParam,LPARAM lParam); int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){//设计一个窗口类WNDCLASS wndcls;wndcls.cbCl…
在Delphi 开发中,常常应用到窗体消息传递,以达成某种操作要求,以下列举一个应用的例子,供大家参考. 自定义过程/函数方法://发送字符串到指字句柄的窗口中 (接收窗体需用发送时的消息常量WM_COPYDATA)procedure SendMessageData(AHandle: THandle; AStr: String);var sData: TCopyDataStruct;begin sData.cbData := Length(AStr) + 1; //为传递的数据分配内存 GetM…
1.在pom.xml 加入配置文件 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-activemq</artifactId> </dependency> 2.编辑代码 import org.springframework.jms.annotation.JmsListener; @Component pub…
使用C#创建控制台应用程序的基本步骤: (1)创建项目: (2)用户界面设计: (3)属性设置: (4)编写程序代码: (5)保存.调试.运行: 例题:设计登录界面,效果如下: 第一步:创建项目: 文件→新建→项目:选择“项目类型”为Visual C#,“模板”为Windows窗体应用程序: 输入名称“例1-3”:选择存放路径“H:\C#程序”:选择“创建新解决方案”: 第二步:用户界面设计:(视图→工具箱) 在工具箱中双击“button”添加按钮:双击“textbox”添加文本框: 工具箱:…
使用C#创建控制台应用程序的基本步骤: (1)创建项目: (2)用户界面设计: (3)属性设置: (4)编写程序代码: (5)保存.调试.运行: 例题:创建一个Windows窗体应用程序,在窗体中添加两个按钮,当单击第一个按钮时,显示“我来啦!”,当单击第二个按钮时,显示“我走啦!”. 第一步:创建项目: 文件→新建→项目:选择“项目类型”为Visual C#,“模板”为Windows窗体应用程序: 输入名称“例1-2”:选择存放路径“H:\C#程序”:选择“创建新解决方案”: 第二步:用户界面…
GUI概述:GUI(Graphical User Interface)—图形化用户界面.用户和程序之间可以通过GUI能方便友好地进行交互,在Java语言中,JFC(Java Foundation Classed)是开发GUI的API集,它主要包含以下几个部分: a)   AWT(抽象窗口工具包):Java开发用户界面最初的工具包,是建立JFC的主要基础; b)   Swing组件:建立在AWT之上,新的,功能更强大的图形组件包; c)   JAVA 2D:实现高质量的二维图形; AWT框架: ①…
.386 .model flat,stdcall option casemap:none ;include 定义 include   windows.inc include   gdi32.inc includelib    gdi32.lib include    user32.inc includelib    user32.lib include    kernel32.inc includelib    kernel32.lib ;数据段 .data? ;变量声明 hInstance  …
1.进入开发设置-消息推送,启用消息推送 url: 启用并设置消息推送配置后,用户发给小程序的消息以及开发者需要的事件推送,都将被微信转发至该服务器地址中. 2.创建消息模板. 3.WXML代码: 4. 获取 access_token 发送模板消息 注意:formId只有在手机上才能看到,开发工具上是看不到的. 5. 这只是在前台开发的,要想推送消息,应该将推送消息等参数发送到后台接口,由后台来实现推送消息.…
var pMes:^String; begin New(pMes); pMes^:=msg; PostMessage(Application.handle, WM_Custom, 0, Integer(pMes)); end; 以下是接收 procedure CustomMessages(var Msg: TMsg; var Handled: Boolean); var msgStr: String; pMes:^String; begin if Msg.hwnd = Application.h…
笔记:争取不用看下面的内容,只看自己的笔记,就能记住这个流程,就算明白了: _tWinMain-->AfxWinMain,它调用四个函数: -->AfxWinInit用于做一些框架的初始化工作. -->CWinApp::InitApplication在appcore.cpp中,和C程序略有不同,这里的工作主要是Doc模板管理器的初始化工作. -->CThread::InitInstance虚函数会被用户改写,在这当中调用CWnd完成窗口的注册和创建,这个在之后一起讲 -->C…
说明{      通过设置全局消息钩子来实现dll注入,然后窗体有相关消息请求的时候就会自动加载注入dll, 然后在入口处做处理就可以了.注入方式简单很多,比代码注入和lsp等注入都简单,就不解释了. 这个也可以传递不同的劫持类型来进行键盘按键记录等. } 注意{     1.dll注入期间注入程序不可以退出,否则dll内核句柄有可能被释放.     2.注意32位和64位注入问题 } DLL调用 /* HMODULE h = LoadLibrary(L"xx.dll"); _SetH…
到第四部分Delphi XE3的代码能基本完成窗体界面的绘制.窗口中的其他控件的处理方法也是相同的,截获消息处理消息. 问题这个编译出来的个头可不小.Release版本竟然2.43M,完全是个胖子.系统中应该加入了大量基础代码(如泛型之类),用Delphi7编译出来应该能小一截. 使用默认Release的配置方案,没有第三方控件. 翻译到C++进行实验,发现明显这个个头没法比.Debug版本88.5K...---  这货确实小.可惜再小现公司项目也不会考虑用C++开发,有些悲剧. C版本只实现了…
VCL存在一些非API消息以供其内部使用,为什么要这样做呢?这要从WM_COMMAND & WM_NOTIFY消息说起,我们说WM_COMMAND消息并不是直接发给实际产生消息的窗体,而是发送到它的父窗体.但是父窗体几乎不可能用通常方法处理这些根本不知道如何处理的消息,于是父窗体把这个消息加上CN_BASE在分发到实际的子窗体中,然后由实际的子窗体处理——解释够清楚的 比如TBitBtn元件为了在按钮表面绘制图象,处理了CN_DRAWITEM消息,这个消息处理函数是这样写的: FCanvas.H…
本文主要分享下Spring Boot和Spring Kafka如何配置整合,实现发送和接收来自Spring Kafka的消息. 先前我已经分享了Kafka的基本介绍与集群环境搭建方法.关于Kafka的介绍请阅读Apache Kafka简介与安装(一),关于Kafka安装请阅读Apache Kafka安装,关于Kafka集群环境搭建请阅读Apache Kafka集群环境搭建 .这里关于服务器环境搭建不在赘述. Spring Kafka整合Spring Boot创建生产者客户端案例 创建一个kafk…
对于存在窗体的WPF程序(或者说,起码在任务栏上有个图标,即ShowInTaskbar = true),互相传递消息是很容易的. 步骤: 1,寻找窗体的句柄 2,运用windows API: SendMessage或PostMessage 3,目标窗体收到消息 这里的代码,展示了一个APP不希望多开所以在启动时检查是否存在一个已经运行的进程.如果进程已经存在,则给对方发送消息并结束自身. 1.判断/获取已经运行的实例 /// <summary> /// 获取当前exe文件的是否已经在电脑上运行…
1.下面就来介绍一下如何简单的显示一个消息提示,好像js可以控制,不过这里用了django.contrib.messages这个库 2.首先呢,在项目的settings.py有默认配置一个django.contrib.messages的相关信息: INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'd…
http://delphi.cjcsoft.net//viewthread.php?tid=635 在delphi线程中实现消息循环 在delphi线程中实现消息循环 Delphi的TThread类使用很方便,但是有时候我们需要在线程类中使用消息循环,delphi没有提供.   花了两天的事件研究了一下win32的消息系统,写了一个线程内消息循环的测试.   但是没有具体应用过,贴出来给有这方面需求的DFW参考一下.希望大家和我讨论.   {---------------------------…
在 Windows应用程序中,窗体是由一种称为“ UI线程( User Interface Thread)”的特殊类型的线程创建的. 首先, UI线程是一种“线程”,所以它具有一个线程应该具有的所有特征,比如有一个线程函数和一个线程 ID. 其次,“ UI线程”又是“特殊”的,这是因为 UI线程的线程函数中会创建一种特殊的对象——窗体,同时,还一并负责创建窗体上的各种控件. 窗体和控件大家都很熟悉了,这些对象具有接收用户操作的功能,它们是用户使用整个应用程序的媒介,没有这样一个媒介,用户就无法控…
在delphi线程中实现消息循环 在delphi线程中实现消息循环 Delphi的TThread类使用很方便,但是有时候我们需要在线程类中使用消息循环,delphi没有提供.   花了两天的事件研究了一下win32的消息系统,写了一个线程内消息循环的测试.   但是没有具体应用过,贴出来给有这方面需求的DFW参考一下.希望大家和我讨论.   {-----------------------------------------------------------------------------…
Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的.而钩子是Windows系统中非常重要的系统接口,用它能够截获并处理送给其它应用程序的消息,来完毕普通应用程序难以实现的功能.钩子能够监视系统或进程中的各种事件消息,截获发往目标窗体的消息并进行处理.这样,我们就能够在系统中安装自己定义的钩子,监视系统中特定事件的发生,完毕特定的功能,比方截获键盘.鼠标的输入,屏幕取词,日志监视等等.可见,利用钩子能够实现很多特殊而实用的功能.因此,对于高级编程人员来说,掌…
--------------201507160917更新--------------- 无意中发现标准消息框在Windows7是有声音的,只是在Windows server 2008(R2)无声,而我用的刚好是后者,所以误以为是MessageBeep API在所有NT6系统都不工作造成~汗,有人在stackoverflow也提过这问题.但我仍然决定使用PlaySound API,不做修改 将声音处理交给ProcessIcon方法负责.之前考虑松耦合,所以将MessageBoxIcon和声音分开处…
http://www.txsz.net/xs/delphi/3/Windows%20%E6%B6%88%E6%81%AF%E6%9C%BA%E5%88%B6.htm Windows 消息机制 by machine 大家是不是很奇怪为什么我还没说到Delphi的控件呢? 不过不用着急,有关深入控件的内容,将会很快出现了,但在这之前, 还得了解Windows图形界面程序的机制--Windows的消息机制. 使用过Delphi的朋友都知道,Delphi是一个真正面向对象的编程环境, 但是不但如此,De…
转载请说明原出处,谢谢~~ 中秋到了,出去玩了几天.今天把仿酷狗程序做了收尾,已经开发完成了,下一篇博客把完结的情况说一下.在这篇博客里说一下使用OLE为窗体增加文件拖拽的功能.使用播放器,我更喜欢直接拖动音乐文件添加到软件里,所以做这个功能很重要.做OLE拖拽之前学习了两篇文章: http://www.codeproject.com/Articles/840/How-to-Implement-Drag-and-Drop-Between-Your-Progra%E3%80%91 http://b…
本文主要包括以下内容: 1.简单理解Windows的消息2.通过一个简单的Win32程序理解Windows消息3.通过几个Win32程序实例进一步深入理解Windows消息4.队列消息和非队列消息5.WM_COMMAND和WM_NOTIFY6.MFC的消息映射7.消息反射机制 1.简单理解Windows的消息 消息,就是指Windows发出的一个通知,告诉应用程序某个事情发生了.举个例子来说,鼠标单击某应用程序的一个按钮.这时,Windows(操作系统)给应用程序发送这个消息,通知应用程序该按钮…