zoukankan      html  css  js  c++  java
  • [转]delphi中的HWnd,THandle,HDC有什么区别

    windodws.pas中  HWND = type LongWord;
    
    windows.pas中THandle定义:THandle = System.THandle;   
    而在system单元中,定义THandle = LongWord;  
    
    windows.pas中  HDC = type LongWord;
    
    也就是说delphi中这三个实际上都是longword,定义出这么三个东西来, 是为了与 windows api配合,因为程序是在windows的平台上开发的,
    要调用windows 的API,而在windowsAPI中定义了这么个类型。 
    
    在windows系统中,
    HDC Handle to a device context (DC). 即指向一个设备上下文。
    HWND Handle to a window.  是一个窗口句柄 
    
    THandle是delphi的东西,windows自己没有定义。
     

    device context

    device context 设备描述表

      要在窗口中输出文字或者显示图形,就需要用到设备描述表,即DC。DC是一个包含设备(物理输出设备,如显示器,以及设备驱动程序)信息的结构体,在Windows平台下,所有的图形操作都是利用DC来完成的。

      设备描述表是一个Windows数据结构,它包含了一个设备(比如显示器和打印机)绘图属性的相关信息。所有的绘图操作的调用都是通过一个设备描述表类型的对象来实现,这个类对象封装了Windows API(Application Programming Interface,应用程序编程接口)函数中关于划线、作图和输入输出文本的的相关操作。设备描述表允许在窗口上进行与设备无关的绘图操作,设备描述表可以用在往屏幕、打印机或者图元文件的绘图操作。

      设备描述表旗下有4个常用DC类,他们分别是CPaintDC,CClientDC,CWindowDC和CMetaFileDC.

  • 相关阅读:
    linux source
    C和指针 第七章 习题
    C和指针 第七章 可变参数
    C和指针 第七章 函数递归与迭代
    C和指针 第五章 位数组
    C和指针 第六章 习题
    Net core学习系列(六)——Net Core路由
    Net core学习系列(五)——Net Core应用程序Startup类介绍
    Net core学习系列(四)——Net Core项目执行流程
    Net core学习系列(三)——Net Core中的依赖注入
  • 原文地址:https://www.cnblogs.com/moon25/p/1979628.html
Copyright © 2011-2022 走看看