扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:潇潇 来源:天极网 2007年10月31日
关键字:
program Project1; { $ APPTYPE CONSOLE } uses Windows , Messages ; { uses SysUtils ; } var wClass : TWndClass; // 主窗口类 hInst , //应用程序句柄 Handle : HWnd ; // 主窗口 aMsg : TMsg ; //消息 RCT : TRect ; //区域 ps : TPaintStruct ; //显示 dc : hdc ; //设备上下文 //函数:WindowProc //作用:处理主窗口的消息 function WindowProc ( hWnd , Msg , wParam , lParam : Longint ) : Longint ; stdcall ; begin WindowProc : = 0 ; case Msg of WM_PAINT : begin dc : =BeginPaint ( hWnd , ps ) ; GetClientRect ( hWnd , RCT ) ; DrawText ( dc , ' hello , world ! ' , -1 , RCT , Dt_SINGLELINE or DT_CENTER or DT_VCENTER ) ; EndPaint ( hWnd , ps ) ; Exit ; end ; WM_DESTROY : //结束应用程序 Begin PostQuitMessage ( 0 ) ; Exit ; end ; end ; Result : = DefWindowProc ( hWnd , Msg , wParam , lParam ) ; //消息默认处理 end ; //函数:WinRegister //作用:注册窗口类 function WinRegister : Boolean ; begin with wClass do //初始化窗口类 begin hInstance : = system.MainInstance ; Style : = CS_HREDRAW or CS_VREDRAW ; HIcon : = LoadIcon ( 0 , IDI_APPLICATION ) ; LpfnWndProc : = @WindowProc ; HbrBackground : = GetStockObject ( WHITE_BRUSH ) ; lpszClassName : = ' Sample Class ' ; hCursor : = LoadCursor ( 0 , IDC_ARROW ) ; end ; ReSult : = RegisterClass ( wClass ) <> 0 ; // 注册窗口类 end ; //函数:WinCreate //作用:创建窗口 function WinCreate : HWnd ; begin //创建主窗口 Handle : = CreateWindow (' Sample Class ' , // 窗口类名 ' Windows API在Delphi中的应用 ' , //窗口标题 WS_OVERLAPPEDWINDOW or WS_VISIBLE , // 窗口风格 10 , //左边界坐标 10 , //上边界坐标 400 , // 宽度 300 , // 高度 0 , // 父窗口句柄 0 , //菜单句柄 system . MainInstance , // 应用程序实例 nil //创建窗口的附加参数 ) ; if Handle <> 0 then begin ShowWindow ( Handle , SW_SHOW ) ; UpdateWindow ( Handle ) ; end ; Result : = Handle ; end ; //主窗口 //程序的进入点 begin if not WinRegister then //调用函数:WinRegister注册窗口类 begin MessageBox ( 0 , ‘ Register failed ‘ , nil , MB_OK ) ; Exit ; end ; Handle : = WinCreate ; //调用函数:WinCreate创建窗口 if longint ( Handle ) = 0 then begin MessageBox ( 0 , ‘ WinCreate failed ‘ , nil , MB_OK ) ; Exit ; end; while ( GetMessage ( aMsg , Handle , 0 , 0 ) ) do //消息循环 begin TranslateMessage ( aMsg ) ; //翻译消息 DispatchMessage ( aMsg ) ; //发送消息 end ; end . |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者