gdi相关内容

无法在 WM_NCPAINT 上的标题栏中绘制?

由于没有WS_CAPTION,我试图在标题栏区域绘制一些东西来表示X,它只使用了WS_EX_TOOLWINDOW |WS_EX_TOPMOST 和 WS_POPUP|WS_THICKFRAME.但我不能在任何地方画任何东西.我在下面做了一个测试,只是用红色填充它,但没有任何改变.我做错了什么或遗漏了什么? case WM_NCACTIVATE:案例 WM_NCPAINT:{//调用默认处理程序( ..
发布时间:2021-09-25 19:07:24 其他开发

BitBlt 问题 GDI

我在此程序中使用 BitBlt 时遇到问题.您调整窗口大小,椭圆也随之调整大小.当然,用普通的 hdc 方法,它是断断续续的和闪烁的.我尝试了 BitBlt 方法,但这也不起作用(可能是因为我做错了).有人可以解决我的错误吗?谢谢 布尔大小;//全球的案例 WM_PAINT:{矩形矩形;GetClientRect(hwnd, &rect);hdc = BeginPaint(hwnd, &ps) ..
发布时间:2021-09-25 19:05:41 C/C++开发

使用 Direct2D 在非客户区绘图

在此页面上:https://docs.microsoft.com/en-us/windows/win32/gdi/wm-ncpaint 解释了如何使用 GDI 在非客户区绘图. 如何在不处理 GDI 或 GDI+ 的情况下使用 Direct2D 在窗口的非客户区中绘图? 解决方案 首先,WM_NCPAINT 是旧的.使用它将禁用窗口的 DWM 主题,提供 Windows 经典/7 基 ..
发布时间:2021-09-25 18:56:48 C/C++开发

通用的纯文本打印机驱动程序不起作用

我正在使用通用纯文本打印机驱动程序,作为WDK(Windows驱动程序工具包)中的示例提供.但是它适用于某些应用程序,不适用于其他应用程序.就像它可用于记事本和Microsoft word,但不适用于chrome浏览器或 FloreantPOS 一样.我尝试使用此驱动程序通过以下4个应用程序打印到文件或热敏打印机:- 1)记事本上的简单文本:成功运行. 2)Microsoft Word ..
发布时间:2021-05-10 18:39:35 其他开发

Winapi获取以像素为单位的字符串宽度

我正在尝试创建一种方法,该方法为我提供以像素为单位的字符串宽度.到目前为止,我的代码: 内联void getTextWidth(HWND hwnd char * text){SIZE textSize;GetTextExtentPoint32(GetDC(hwnd),text,strlen(text)和& textSize);返回 ?;} 我知道我应该使用 LPtoDP ( ..
发布时间:2021-05-10 18:39:29 C/C++开发

具有python ctypes的灰度hbitmap

我有一些PIL图片,试图将其转换为ctypes的灰度HBitmap.我对ctypes,C或HBITMAP的了解很少.我将来自各种来源的代码拼凑在一起,例如 使用8bpp灰度位图(非托管C ++) http://d.hatena.ne.jp/chrono-meter/20090905/p3 这是我到目前为止所拥有的.首先,我初始化了所需的标头: 导入ctypes从ctypes导入wi ..
发布时间:2021-05-10 18:39:25 Python

捕获屏幕的错误部分

我创建了一个小型演示应用程序,其窗口如下图所示: 当我运行此演示应用程序并按任意键时,我想捕获屏幕位图的一部分. 我感兴趣的屏幕部分是我的窗口所占据的部分,即窗口中包含字母的顶部矩形的内容.捕获的屏幕位图应如下所示: 我面临的问题是屏幕捕获代码捕获了屏幕的错误部分. 下面是完整的代码(请记住,我试图将内容保持在最低限度): #include无效f ..
发布时间:2021-05-10 18:39:15 C/C++开发

CreateCompatibleBitmap()返回黑色HBITMAP

Hello Stack Overflow用户.似乎我在以下代码中没有正确使用CreateCompatibleBitmap(): #include使用命名空间std;int main(){HDC hdc = GetDC(HWND_DESKTOP);HDC MemDC = CreateCompatibleDC(hdc);HBITMAP hBit = CreateCompat ..
发布时间:2021-05-10 18:39:12 C/C++开发

用GDI画线-Invalidate()/onPaint问题

我一直在学习如何使用GDI,但在理解Invalidate()的方式和覆盖onPaint事件的工作上却遇到了困难,并且似乎正在绕圈转圈. 我有以下代码 private void DrawLine(){System.Drawing.Pen myPen =新的System.Drawing.Pen(System.Drawing.Color.Red);System.Drawing.Graphics ..
发布时间:2021-05-10 18:39:09 C#/.NET

特定窗口C ++的屏幕截图

我想截取某些特定窗口(例如计算器)的屏幕截图. 这是我根据此讨论内容编写的代码: //获取计算器应用程序的窗口句柄.HWND hWnd = :: FindWindow(0,_T("Calculator"));RECT r;GetWindowRect(hWnd,& r);int x [2];int y [2];x [0] = r.top;x [1] = r.bottom;y [0] = r. ..
发布时间:2021-05-10 18:38:58 C/C++开发

强制Win32通用控件使用"ID2D1HwndRenderTarget"?

我使用 ID2D1HwndRenderTarget 绘制了大部分UI,但是我想要一些经典的窗口控件: button , edit .如何 ID2D1HwndRenderTarget * canvas = nullptr;//它是全局对象HWND按钮= nullptr;//它是全局对象HWND编辑= nullptr;//它是全局对象HWND custom = nullptr;//它是全局对象 ..
发布时间:2021-05-10 18:38:55 其他开发

是否可以创建诸如DrawFocusRect()的XOR笔?

Win32 GDI DrawFocusRect(HDC,const RECT *) 函数在所需devince上下文上绘制矩形的虚线轮廓.关于此函数的最酷的事情是它使用XOR函数绘制点,这样当您在同一设备上下文和矩形上再次调用它时,它将擦除自身: RECT rc = {0,0,100,100};DrawFocusRect(hdc,& rc);//绘制矩形DrawFocusRect(hdc,& r ..
发布时间:2021-05-10 18:38:44 其他开发

如果释放不干净的设备上下文会怎样?

通常,如果程序在设备上下文中选择一个对象或更改其属性,则应在释放设备上下文之前将其改回.如果不这样做会发生什么? 让我说一下: HDC hdc = GetDC(some_window);SelectObject(hdc,some_font);SetTextColor(hdc,0x123456);SetBkColor(hdc,0xFEDCBA);SetROP2(hdc,R2_XORPEN) ..
发布时间:2021-05-10 18:38:41 其他开发

计算Windows中字形的位置

Windows是否有任何简单且兼容的GDI或.NET可访问子系统,可以提供字形位置字符.这里的任务是组合符号,例如阿拉伯语中的组合符号,有时具有多个组合符号链,它们相互堆叠,例如阿拉伯语Fatha +阿拉伯字母上标Alef +阿拉伯语Maddah.麻烦的是,尽管可以使用GDI GetCharacterPlacement精确地确定X位置,但是无法使用从OpenType或TrueType字体表和锚点以 ..
发布时间:2021-05-10 18:38:38 C#/.NET

错误C2248:"CObject :: CObject":当我在MFC中调用hDC.SelectObject函数时,无法访问在类"CObject"中声明的私有成员

我使用GDI方法在设备上下文上进行绘制,在WinCE 2013的MFC(Visual Studio 2013)中开发了一个简单的程序.不幸的是,当我尝试在上下文设备句柄上调用SelectObject时,出现错误:“错误C2248:'CObject :: CObject':无法访问在类'CObject'中声明的私有成员" 我附上了一个调用SelectObject方法的函数. BOOL Dr ..
发布时间:2021-05-10 18:38:35 C/C++开发

通过调用GetDC(NULL)返回哪种类型的DC?

Windows API函数 GetDC() 接受一个参数: hWnd 要获取其DC的窗口的句柄.如果该值为NULL,则GetDC将检索整个屏幕的DC. 在页面的下方,注意以下内容: 使用通用DC绘画后,必须调用 ReleaseDC 函数以释放DC.类别DC和私有DC不必释放. ReleaseDC 必须从与 GetDC 相同的线程中调用.DC的数量仅受可用内存的限制. ..
发布时间:2021-05-10 18:38:31 其他开发