V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
AX5N
V2EX  ›  程序员

直接用 gdi 绘制、dx 绘制和直接开一个窗口有什么区别?

  •  
  •   AX5N · 2020-04-28 11:27:14 +08:00 · 1160 次点击
    这是一个创建于 1675 天前的主题,其中的信息可能已经有所发展或是发生改变。

    想为一个 app 写一个显示 osd 信息的外挂程序——简单地在 app 的表面(顶层)显示一些文本。我知道可以创建一个透明的窗口来实现,也可以直接用 gdi 绘制,或者是用 dx 绘制。请问这三种方法有什么区别吗,毕竟自己绘制还是比创建一个窗口麻烦的,除了性能以外还有什么好处?

    如果想让子程序( osd 信息)的位置实时跟随着父窗口( app )的位置,父窗口最小化的时候,子程序也自动消失,是用哪种方案比较“自然”?

    2 条回复    2020-04-28 14:08:29 +08:00
    sariya
        1
    sariya  
       2020-04-28 12:09:36 +08:00 via Android
    直接 hook 目标窗口消息就好了,gdi 就是在 dx 上再封装了一层,dx 性能更好
    楼主的绘制是说自己创建整个窗口?
    AX5N
        2
    AX5N  
    OP
       2020-04-28 14:08:29 +08:00
    @sariya 很有道理,我只是要显示文字,直接 hook 目标的函数就好了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1507 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:59 · PVG 07:59 · LAX 15:59 · JFK 18:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.