在本文中,我们将给您介绍关于使用C在窗口中显示string输出的详细内容,并且为您解答在WIN32API中的相关问题,此外,我们还将为您提供关于c–删除窗口背景win32API、c–在Win32API
在本文中,我们将给您介绍关于使用C在窗口中显示string输出的详细内容,并且为您解答在WIN32 API中的相关问题,此外,我们还将为您提供关于c – 删除窗口背景win32API、c – 在Win32 API中绘制格式化文本的最快方法是什么?、cocoaMac是Win32 API或MFC在Windows中的等价物吗?、Cocoa是Mac在Windows中与Win32 API或MFC等效吗?的知识。
本文目录一览:- 使用C在窗口中显示string输出(在WIN32 API中)(c++输出窗口停留)
- c – 删除窗口背景win32API
- c – 在Win32 API中绘制格式化文本的最快方法是什么?
- cocoaMac是Win32 API或MFC在Windows中的等价物吗?
- Cocoa是Mac在Windows中与Win32 API或MFC等效吗?
使用C在窗口中显示string输出(在WIN32 API中)(c++输出窗口停留)
我想要一个适当的方式,我可以输出一个string,并将其显示在创build的窗口上。 我一直使用textout()函数,但是由于它只绘制窗口,一旦窗口最小化并恢复,窗口上显示的数据就消失了。 另外当要显示的数据超过Window的大小时,只显示等于窗口大小的数据,其他数据被截断。 有没有其他的方法来输出窗口上的数据?
如何获得Windows解锁事件在C#窗口应用程序?
为Windows服务提供版本号C#
通过共享内存IPC在进程之间共享指针
在Linux上可以实现正确的故障安全stream程共享障碍吗?
GCC不再执行<varargs.h>
您可以在窗口上放置一个Static或Edit控件(标签和文本框)以显示数据。
在WM_CREATE期间调用其中之一:
HWND hWndExample = CreateWindow("STATIC","Text Goes Here",WS_VISIBLE | WS_CHILD | SS_LEFT,10,100,hWnd,NULL,hInstance,NULL);
要么
HWND hWndExample = CreateWindow("EDIT",WS_VISIBLE | WS_CHILD | ES_LEFT,NULL);
如果您使用Edit那么用户也将能够滚动,并复制和粘贴文本。
在这两种情况下,都可以使用SetwindowText()更新文本:
SetwindowText(hWndExample,TEXT("Control string"));
( Daboyzuk的Curtosy )
textout应该工作得很好,如果在WM_PAINT中完成,每次都应该绘制。 (包括最小化和调整大小)
LRESULT CALLBACK MyWndProc(HWND hWnd,UINT message,WParaM wParam,LParaM lParam) { switch(message) { case WM_PAINT: PAINTSTRUCT ps; HDC hdc = BeginPaint(hWnd,&ps); textout(hdc,TEXT("Text Out String"),strlen("Text Out String")); EndPaint(hWnd,&ps); ReleaseDC(hWnd,hdc); break; default: return DefWindowProc(hWnd,message,wParam,lParam); } return 0; }
您可能也对DrawText感兴趣
LRESULT CALLBACK MyWndProc(HWND hWnd,&ps); RECT rec; // SetRect(rect,x,y,width,height) SetRect(&rec,100); // DrawText(HDC,text,text length,drawing area,parameters "DT_XXX") DrawText(hdc,strlen("Text Out String"),&rec,DT_TOP|DT_LEFT); EndPaint(hWnd,lParam); } return 0; }
这将在给定的矩形绘制文本到你的窗口,
绘制文本将Word包装在给定的矩形内。
如果你想把整个窗口作为绘制区域,你可以使用GetClientRect(hWnd,&rec); 而不是SetRect(&rec,100);
c – 删除窗口背景win32API
在delphi中,每个表单看起来都有它自己的实例,并且为一个窗口设置背景颜色只是改变一个值的问题.不是win32的情况,当你更改该值时,它会影响使用该类的每个窗口(更新后的c).
我需要做的是清除/擦除我的窗口背景.我可以用FillRect(..)做到这一点并且它的工作非常好,但我发现WM_ERASEBKGND似乎正在做我需要的东西.他们提到,如果这个消息被处理,我应该返回一个非零,但他们没有告诉如何处理它.
那么FillRect(和similliar)可以让我用我定义的画笔擦除一个窗口而不是默认的类吗?
谢谢
解决方法
通过返回非零值,您只需告诉Windows此消息已被处理,无需进一步操作.没有比这更正式的了.
c – 在Win32 API中绘制格式化文本的最快方法是什么?
从我迄今为止所学到的东西,看起来像在GDI中绘制文本的最低级别的选项是textout函数.然而,如果我需要继续改变字体颜色,那意味着我需要对textout进行很多的调用,以便使用混合格式绘制一个文本.这是没有效率的吗?当语法突出显示和富文本控件实现时,他们是否可能在幕后使用textout?还有其他方式吗?在GDI中绘制文本的其他方法只是在textout周围的更高级别的包装器吗?
解决方法
许多年前,我开发了一个丰富的编辑控件,这本身就是Microsoft Word的迷你版本.我使用Exttextout作为所有文本输出的主要工作.该控件将维护最近使用的字体的字体缓存(默认缓存大小为10个字体).它支持WYSIWYG布局,所以它实际上是使用打印机DC和字体进行所有布局,然后使用屏幕DC和类似的字体渲染屏幕兼容版本,所以有很多额外的工作,这可能不适用于你的情况即使如此,在一天的典型硬件(例如,266 mhz Pentium)上,性能也非常出色.
cocoaMac是Win32 API或MFC在Windows中的等价物吗?
在MFC下面的Cocoa下面的Win32 API是否有较低级别的API? 如果有,是否广泛用于Mac OS X或iOS应用程序开发?
用C编写的用Cocoa前端编写的OpenGL游戏我想移植到Windows
cocoa,Windows和线程?
OpenGL获取背景像素信息
cocoa消息循环? (与Windows消息循环)
SysEx不会发送字节“AD”
CoreFoundation是较低级别的C API:
http://developer.apple.com/corefoundation/
基础课程是更高级的目标-C基础课程集合:
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/ObjC_classic/_index.html
苹果在这些之间提供了“免费”桥接类型:
http://developer.apple.com/library/ios/#documentation/CoreFoundation/Conceptual/CFDesignConcepts/Articles/tollFreeBridgedTypes.html
对于OSX AppKit(Cocoa)是使用基础类的更高级的UI框架:
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/_index.html
对于设备(iOS),在基础类上有UIKit(Cocoa Touch):
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIKit_Framework/_index.html
所有这些在OSX和iOS开发中被广泛使用…
Cocoa是Mac在Windows中与Win32 API或MFC等效吗?
解决方法
http://developer.apple.com/corefoundation/
基础课程是更高的Objective-c基础课程集:
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/ObjC_classic/_index.html
Apple提供以下类型的“免费”桥接类型:
http://developer.apple.com/library/ios/#documentation/CoreFoundation/Conceptual/CFDesignConcepts/Articles/tollFreeBridgedTypes.html
对于OSX AppKit(Cocoa)是使用基础类的更高级UI框架:
http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/ObjC_classic/_index.html
对于设备(iOS),基础类上有UIKit(Cocoa Touch):
http://developer.apple.com/library/ios/#documentation/uikit/reference/UIKit_Framework/_index.html
所有这些都广泛用于OSX和iOS开发……
关于使用C在窗口中显示string输出和在WIN32 API中的介绍已经告一段落,感谢您的耐心阅读,如果想了解更多关于c – 删除窗口背景win32API、c – 在Win32 API中绘制格式化文本的最快方法是什么?、cocoaMac是Win32 API或MFC在Windows中的等价物吗?、Cocoa是Mac在Windows中与Win32 API或MFC等效吗?的相关信息,请在本站寻找。
本文标签: