- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在使用 WinAPI 创建一个 Windows 应用程序。在处理窗口的 WM_PAINT
消息时,我正在使用 TextOut()
函数向用户显示更新的文本。
case WM_PAINT:
{
PAINTSTRUCT ps;
HDC hdc;
hdc = BeginPaint(hwnd, &ps);
SelectObject(hdc, hfDefault);
// display the user data in the window
TextOut(hdc,10,70, "Points: 0", 9);
TextOut(hdc,10,85, "Level: 0", 8);
// ...
EndPaint(hwnd, &ps);
}
break;
如何在调用函数后更改 TextOut()
打印的文本以及确定打印文本长度的最后一个参数?
我发现的关于使用 TextOut()
的一切都是关于文本字体的。
最佳答案
也许是这样的......
// I'll assume hwnd is global
void OnSomeActionToRefreshValues()
{
HDC hdc = ::GetDc(hwnd);
DrawValues(hdc, 88, 99);
ReleaseDC(hdc);
}
void DrawValues(HDC hdc, int points, int level)
{
// Might need a rectangle here to overwrite old text
SelectObject(hdc, hfDefault); // I assume hfDefault is global
TCHAR text[256];
swprintf_s(text, 256, L"Points: %d", points);
TextOut(hdc, 10, 70, text, wcslen(text));
swprintf_s(text, 256, L"Level: %d", level);
TextOut(hdc, 10, 85, text, wcslen(text));
}
在你赢得过程中:
case WM_PAINT:
PAINTSTRUCT ps;
HDC hdc;
hdc = BeginPaint(hwnd,&ps);
DrawValues(hdc, 88, 99);
EndPaint(hwnd,&ps);
break;
关于C++ WinAPI TextOut() 更新文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22050749/
让我感到沮丧的是,这对我来说是多么困难。我有一个具有打印功能的 MFC 应用程序。当我点击打印时,我想创建一个 pdf 文件,在 A4 页面的中心有一个单词。我正在使用 CPrintDialog,并且
如何删除或隐藏当前文本以添加新文本?目前,当他添加另一个文本时,文本与文本重叠。我尝试使用 InvalidateRect(hWnd, NULL, TRUE); 但我没有看到任何区别。 LRESULT
我正在重新学习 Delphi,因为多年来没有编写任何东西,并且忘记的比我学到的更多!我从一个简单的文件搜索例程开始,并将找到的文件放在多列列表框中。我找到的组件名为 MultiColListBox.p
我正在尝试计算每个单元格的大小(包含“ff”或“a0”等文本),以便 32 个单元格按宽度适合窗口。但是,charWidth*2 不代表单元格的宽度,因为它不考虑帐户中字符之间的间距。 如何获取字体大
我最近让我的主窗口使用 WM_PAINT 写文本,但现在我意识到这样做可能不是最好的消息,所以我正在尝试另一个版本; 主窗口包含一个菜单,在单击菜单项时会发送 ID_FILE_PID 消息,它会构建
这个问题在这里已经有了答案: How do I link to a library with Code::Blocks? (3 个答案) 关闭 9 年前。 我需要使用一些 GDI32 函数,但我需要
我正在 VS 2019 中制作桌面应用程序,并尝试使用 TextOut 打印变量 x。我知道问题不在于我改变 x 变量的方式,因为它使用 OutputDebugString 正确输出。我对 TextO
在 TextOut 行的这段代码中遇到一些问题,它说: error: cannot convert 'std::string* {aka std::basic_string*}' to 'LPCSTR
我正在使用 WinAPI 创建一个 Windows 应用程序。在处理窗口的 WM_PAINT 消息时,我正在使用 TextOut() 函数向用户显示更新的文本。 case WM_PAINT: {
这是我在表单的 OnPaint 事件中的代码: int elementCount; String tStr = L"15:00"; ::BeginPath(Canvas->Handle); ::Tex
我正在尝试使用 TextOut 函数打印一个新行。 我试过了 TextOut(hDC, 10, 20, "Hello\nWorld", strlen(text)); 但输出是“HelloWorld”。
我在哪里使用 TextOut 或 DrawText? TCHAR text[]= "My First Window"; RECT rc; HDC wdc = GetWindowDC
整个代码片段... #include #include #include using namespace std; //=====================================
因此,在搜索了一些 Win32 GUI 教程之后(我认为有关制作 GUI 的教程可能会让我更积极地制作 C++ 应用程序,因此通常更擅长使用 C++ 进行编程),我遇到了一个 rohitab 教程。我
我目前正在使用 C++ 开发一个打印插件,并开始使用 TextOut 来打印我想要的文本。它工作得很好,但显然,TextOut 用作参数的位置以像素为单位。有没有办法将它们设置为厘米或毫米?还是其他?
我正在编写一段代码,基本上是通过多次调用 TextOut 在屏幕上绘制文本。这是一个 C++ Win32 应用程序,我正在使用 Visual Studio 2012。在标记拼写错误等时,如何以 Wor
我发现以前使用过这两个功能,但我不太明白它们之间的区别。嗯,我知道 DrawText 需要一个格式化矩形,并且可以做一些文本格式化,而 textout 只是起始坐标,还有其他的区别吗? 最佳答案 Dr
我在项目中使用字体“Consolas”和/或“Courier New”来绘制类似 MS-DOS 的环境。在这个项目中,如果我使用 TextOut(TCanvas 的)在一条语句中按顺序打印 Box D
我正在使用 TextOut() 在 TCanvas 上绘制文本,但我想要更大的字体。 我能做什么? 最佳答案 试试这个 Canvas.Font.Size := ; Canvas.TextOut(0,0
我将描述我的总体目标,以防我提出的问题不是获得我正在寻找的答案的最佳形式。我有一个围绕 X 轴旋转的单词球体或“单词球”。当单词旋转到后面时(Z坐标从-1到1,从前到后),我打算更改每个单词的大小和不
我是一名优秀的程序员,十分优秀!