• 当前位置: 首页 > 等阶教程源码 > 进阶教程源码易语言纯API创建窗口源码
  • 易语言纯API创建窗口源码

    • 软件授权:
      开源软件
    • 软件大小:
      11.22 KB
    • 文件类型:
      .zip,.e
    • 下载次数:
    • 上传用户:
      心脏
    • 发布时间:
      2018-10-22 23:02
    • 软件等阶:
    • 运行环境:
      Winall,Win2003,WinXP,Win7,Win8
    • 软件评级:

    软件介绍             



     

    易语言纯API创建窗口源码


    系统结构:窗口过程函数,GetClientRect,UpdateWindow,ShowWindow,DefWindowProc,RegisterClassEx,LocalSize_WNDCLASSEX,GetModuleHandle,LoadCursor,LoadIcon,CreateWindowEx,DispatchMessage,GetMessage,TranslateMessage,PostQuitMessage,BeginPaint,EndPaint,ZeroMemory_WNDCLASSEX,DestroyWindow,ExitProcess,DrawText,


    ======程序集1
               |  |
               |  |------ _启动子程序
               |  |
               |  |------ _窗口主程序
               |  |
               |  |------ 窗口过程函数
               |  |
               |  |
    ======调用的Dll
               |  |
               |  |---[dll]------   GetClientRect
               |  |
               |  |---[dll]------   UpdateWindow
               |  |
               |  |---[dll]------   ShowWindow
               |  |
               |  |---[dll]------   DefWindowProc
               |  |
               |  |---[dll]------   RegisterClassEx
               |  |
               |  |---[dll]------   LocalSize_WNDCLASSEX
               |  |
               |  |---[dll]------   GetModuleHandle
               |  |
               |  |---[dll]------   LoadCursor
               |  |
               |  |---[dll]------   LoadIcon
               |  |
               |  |---[dll]------   CreateWindowEx
               |  |
               |  |---[dll]------   DispatchMessage
               |  |
               |  |---[dll]------   GetMessage
               |  |
               |  |---[dll]------   TranslateMessage
               |  |
               |  |---[dll]------   PostQuitMessage
               |  |
               |  |---[dll]------   BeginPaint
               |  |
               |  |---[dll]------   EndPaint
               |  |
               |  |---[dll]------   ZeroMemory_WNDCLASSEX
               |  |
               |  |---[dll]------   DestroyWindow
               |  |
               |  |---[dll]------   ExitProcess
               |  |
               |  |---[dll]------   DrawText

      


    易语言纯API创建窗口源码


    调用的DLL命令:


    .DLL命令 GetClientRect, 整数型, "user32", "GetClientRect", , 返回指定窗口客户区矩形的大小  非零表示成功,零表示失败。会设置GetLastError
        .参数 hwnd, 整数型, , 欲计算大小的目标窗口
        .参数 lpRect, RECT, , RECT,指定一个矩形,用客户区域的大小载入(以像素为单位);


    .DLL命令 UpdateWindow, 整数型, "user32", "UpdateWindow", , 强制立即更新窗口,窗口中以前屏蔽的所有区域都会重画(在vb里使用:如vb窗体或控件的任何部分需要更新,可考虑直接使用refresh方法  非零表示成功,零表示失败
        .参数 hwnd, 整数型, , 欲更新窗口的句柄;


    .DLL命令 ShowWindow, 整数型, "user32", "ShowWindow", , 控制窗口的可见性(在vb里使用:针对vb窗体及控件,请使用对应的vb属性)  如窗口之前是可见的,则返回TRUE(非零),否则返回FALSE(零)
        .参数 hwnd, 整数型, , 窗口句柄,要向这个窗口应用由nCmdShow指定的命令
        .参数 nCmdShow, 整数型, , 为窗口指定可视性方面的一个命令。请用下述任何一个常数;SW_HIDE:隐藏窗口,活动状态给令一个窗口;SW_MINIMIZE:最小化窗口,活动状态给令一个窗口;SW_RESTORE:用原来的大小和位置显示一个窗口,同时令其进入活动状态;SW_SHOW:用当前的大小和位置显示一个窗口,同时令其进入活动状态;SW_SHOWMAXIMIZED:最大化窗口,并将其激活;SW_SHOWMINIMIZED:最小化窗口,并将其激活;SW_SHOWMINNOACTIVE:最小化一个窗口,同时不改变活动窗口;SW_SHOWNA:用当前的大小和位置显示一个窗口,不改变活动窗口;SW_SHOWNOACTIVATE:用最近的大小和位置显示一个窗口,同时不改变活动窗口;SW_SHOWNORMAL:与SW_RESTORE相同;


    .DLL命令 DefWindowProc, 整数型, "user32", "DefWindowProcA", , 调用缺省窗口过程
        .参数 hwnd, 整数型
        .参数 wMsg, 整数型
        .参数 wParam, 整数型
        .参数 lParam, 整数型


    .DLL命令 RegisterClassEx, 整数型, "user32", "RegisterClassExA"
        .参数 pcWndClassEx, WNDCLASSEX


    .DLL命令 LocalSize_WNDCLASSEX, 整数型, "kernel32", "LocalSize", , 返回本地内存块大小
        .参数 hMem, WNDCLASSEX


    .DLL命令 GetModuleHandle, 整数型, "kernel32", "GetModuleHandleA", , 获取一个应用程序或动态链接库的模块句柄  如执行成功成功,则返回模块句柄。零表示失败。会设置GetLastError
        .参数 lpModuleName, 整数型, , 指定模块名,这通常是与模块的文件名相同的一个名字。例如,NOTEPAD.EXE程序的模块文件名就叫作NOTEPAD;


    .DLL命令 LoadCursor, 整数型, "user32", "LoadCursorA", , 从指定的模块或应用程序实例中载入一个鼠标指针。LoadCursorBynum是LoadCursor函数的类型security声明  执行成功则返回已载入的指针的句柄;零表示失败。在Windows ;    95 和Win16环境中,这个函数只能载入标准尺寸的图标
        .参数 hInstance, 整数型, , 一个DLL的模块句柄;或者一个实例句柄,指定包含了鼠标指针的可执行程序
        .参数 lpCursorName, 整数型, , 作为一个字串,指定欲载入的指针资源。作为一个长整数值,指定欲载入的资源ID;或者设置一个常数,代表某幅固有系统指针。如装载的是一个固有系统指针,注意hInstance参数应设为零。在api32.txt文件中以前缀IDC_ 作为标志;


    .DLL命令 LoadIcon, 整数型, "user32", "LoadIconA", , 从指定的模块或应用程序实例中载入一个图标。其中,LoadIconBynum是LoadIcon函数的类型security声明  执行成功则返回已载入的图标的句柄;零表示失败。会设置GetLastError
        .参数 hInstance, 整数型, , 0
        .参数 lpIconName, 整数型, , IDI_常量。或文件名


    .DLL命令 CreateWindowEx, 整数型, "user32", "CreateWindowExA", , 建立窗口  在返回前,CreateWindow给窗口过程发送一个WM_CREATE消息。对于层叠,弹出式和子窗口,CreateWindow给窗口发送WM_CREATE,WM_GETMINMAXINFO和WM_NCCREATE消息。消息WM_CREATE的IParam参数包含一个指向CREATESTRUCT结构的指针。如果指定了WS_VISIBLE风格,CreateWindow向窗口发送所有需要激活和显示窗口的消息
        .参数 dwExStyle, 整数型, , WS_EX_常量
        .参数 lpClassName, 文本型, , 指向一个空结束的字符串或整型数atom。如果该参数是一个整型量,它是由此前调用theGlobaIAddAtom函数产生的全局量。这个小于OxCOOO的16位数必须是IpClassName参数字的低16位,该参数的高位必须是O
        .参数 lpWindowName, 文本型
        .参数 dwStyle, 整数型, , WS_常量
        .参数 x, 整数型, , CW_USEDEFAULT
        .参数 y, 整数型
        .参数 nWidth, 整数型
        .参数 nHeight, 整数型
        .参数 hWndParent, 整数型
        .参数 hMenu, 整数型
        .参数 hInstance, 整数型, , 与窗口相关联的模块事例的句柄
        .参数 lpParam, 整数型, , 指向一个值的指针,该值传递给窗口 WM_CREATE消息


    .DLL命令 DispatchMessage, 整数型, "user32", "DispatchMessageA", , 向窗口发送消息
        .参数 lpMsg, MSG


    .DLL命令 GetMessage, 整数型, "user32", "GetMessageA", , 从线索消息队列中返回一条消息  常数 WM_KEYFIRST和WM_KEYAST可作为过滤值取得与键盘输入相关的所有消息:常数WM_MOUSEFIRST和WM_MOUSELST可用来接收所有的鼠标消息。如果wMsgFilterMin和wMsgFilterMax都为零,GetMessage返回所有可得的消息(即,无范围过滤)。
        .参数 lpMsg, MSG
        .参数 hwnd, 整数型
        .参数 wMsgFilterMin, 整数型
        .参数 wMsgFilterMax, 整数型


    .DLL命令 TranslateMessage, 整数型, "user32", "TranslateMessage", , 转换虚拟关键字消息
        .参数 lpMsg, MSG


    .DLL命令 PostQuitMessage, , "user32", "PostQuitMessage", , 通知WINDOWS线索将中断
        .参数 nExitCode, 整数型


    .DLL命令 BeginPaint, 整数型, "user32", "BeginPaint", , 准备一个画图窗  返回设备句柄
        .参数 hwnd, 整数型
        .参数 lpPaint, PAINTSTRUCT


    .DLL命令 EndPaint, 整数型, "user32", "EndPaint", , 在指定窗口中标记图画结尾标志
        .参数 hwnd, 整数型
        .参数 lpPaint, PAINTSTRUCT


    .DLL命令 ZeroMemory_WNDCLASSEX, , "kernel32.dll", "RtlZeroMemory", , 将一块内存置零
        .参数 Destination, WNDCLASSEX
        .参数 Length, 整数型


    .DLL命令 DestroyWindow, 整数型, "user32", "DestroyWindow", , 破坏(即清除)指定的窗口以及它的所有子窗口(在vb里使用:用处不大。原文:it ;    is unlikely to be of much use.)  非零表示成功,零表示失败。会设置GetLastError
        .参数 hwnd, 整数型, , 欲清除的窗口的句柄;


    .DLL命令 ExitProcess, , "kernel32", "ExitProcess", , 中止一个进程
        .参数 uExitCode, 整数型, , 指定想中断的那个进程的一个退出代码在VB中使用应尽量避免用该函数来关闭进程。不要在自己的VB程序中使用它。此时,应试着向要关闭的那个程序的主窗口投递一条WM_CLOSE消息;


    .DLL命令 DrawText, 整数型, "user32", "DrawTextA", , 将文本描绘到指定的矩形中  描绘文字的高度
        .参数 hdc, 整数型, , 欲在其中显示文字的一个设备场景的句柄
        .参数 lpStr, 文本型, , 欲描绘的文本字串
        .参数 nCount, 整数型, , 欲描绘的字符数量。如果要描绘整个字串(直到空中止符),则可将这个参数设为-1
        .参数 lpRect, RECT, , RECT,指定用于绘图的一个格式化矩形(采用逻辑坐标)
        .参数 wFormat, 整数型, , 一个标志位数组,决定了以何种形式执行绘图。参考下面总结的常数类型列表标志常数说明DT_BOTTOM必须同时指定DT_SINGLE。指示文本对齐格式化矩形的底边DT_CALCRECT象下面这样计算格式化矩形:多行绘图时矩形的底边根据需要进行延展,以便容下所有文字;单行绘图时,延展矩形的右侧。不描绘文字。由lpRect参数指定的矩形会载入计算出来的值DT_CENTER文本垂直居中DT_EXPANDTABS描绘文字的时候,对制表站进行扩展。默认的制表站间距是8个字符。但是,可用DT_TABSTOP标志改变这项设定DT_EXTERNALLEADING计算文本行高度的时候,使用当前字体的外部间距属性(the external leading attribute)DT_LEFT文本左对齐DT_NOCLIP描绘文字时不剪切到指定的矩形DT_NOPREFIX通常,函数认为 & 字符表示应为下一个字符加上下划线。该标志禁止这种行为DT_RIGHT文本右对齐DT_SINGLELINE只画单行DT_TABSTOP指定新的制表站间距,采用这个整数的高8位DT_TOP必须同时指定DT_SINGLE。指示文本对齐格式化矩形的顶部DT_VCENTER必须同时指定DT_SINGLE。指示文本对齐格式化矩形的中部DT_WORDBREAK进行自动换行。如用SetTextAlign函数设置了TA_UPDATECP标志,这里的设置则无效;

    相关软件

    下载说明

    本站目前主要提供易语言源码、模块、支持库等下载大部分源码均为ZIP打包,
    注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
    部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
    由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。

    使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。

     

    推荐排行

    • 易语言VB2易V0009源码

      易语言VB2易V0009源码,转换VB函数,删除函数编辑框空行,删除编辑框空行,转换VB函数_2,转换VB常数,转换VB自定义数据类型,转换VB子程序,转换VB全局变量,转换VB局部变量,子程序1,转换VB函数2...

    • 易语言-正文提取源码

      易语言-正文提取源码,正文提取,特殊字符过滤,取汉字个数_正则法,标准清除HTML标签,纯净清除HTML标签...

    • 易语言SendInput源码

      易语言SendInput源码,SendInput,模拟键盘_,模拟鼠标移动_,模拟鼠标单击_,SendUnicode,SendAnsi,SendKeyS,取变量地址_字节集型_,指针到短整数_,字节集到短整数_,AnsiToUnicode,模拟键盘动作_,模拟鼠标动作_,VkKeyScanW,GetKeyState,RtlInitAnsiString,RtlFreeU...

    • 易语言SDK窗口源码

      易语言SDK窗口源码,SDK窗口,WndProc,子程序_菜单初始化,HIWORD,LOWORD,子程序_处理命令消息,GetModuleHandle,LoadIcon,LoadCursor,GetStockObject,RegisterClass,MessageBox,CreateWindowEx,ShowWindow,UpdateWindow,GetMessage,TranslateMessage,DispatchMes...

    • 易语言API创建暂停进程进

      易语言API创建暂停进程进行DLL注入源码,API创建暂停进程进行DLL注入,GetCmdLine,命令行缓冲区_,取文本内容长度_,CopyMemory,SN_CreateProcessA,SN_InjectDllA...

    • 易语言api创建多层目录源

      易语言api创建多层目录源码,api创建多层目录,api_创建多层目录...

    • 易语言高斯算法源码

      易语言高斯算法源码,高斯算法...

    • 易语言高斯赛德尔迭代法

      易语言高斯赛德尔迭代法演示源码,高斯赛德尔迭代法演示,DBLX...

    • 易语言雪花屏保源码

      易语言雪花屏保源码,雪花屏保,Rnd,InitP,GetContrast,GetDC,GetPixel,SetPixel,ReleaseDC,InvalidateRect...