可以在任何函数中随意(顺序)输出到屏幕(像CMD似的黑框框),”是不是要直接写屏?
CWnd* pDeskWnd = GetDesktopWindow();
CDC* pdc = pDeskWnd->GetDC();
// 可以选择文字字体,颜色透明性等
pdc->TextOut( 100, 100, _T("输出文字"));
pDeskTop->ReleaseDC(pdc);
这样就可以在屏幕的任何位置然后时候输出文字,当然输出后如果被刷新就消失了。
“我想在MFC中也能把函数中的计算结果随时输出到文档的窗口”。也就是直接在MFC程序中,输出结果到窗口吧
CDC*pdc = GetDC();
pdc->TextOut( 100, 100, _T("输出文字"));
ReleaseDC(pdc);
在窗口位置输出文字。
怎样在vc++的Win32应用程序中的任意位置输出文字??
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hdc;
TCHAR greeting[] = _T("Hello, World!");
switch (message)
{
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
out "Hello, World!"
// in the top left corner.
TextOut(hdc,
5, 5,
greeting, _tcslen(greeting));
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
break;
}
HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
// 获取标准输出设备句柄
CONSOLE_SCREEN_BUFFER_INFO bInfo; // 窗口缓冲区信息
GetConsoleScreenBufferInfo(hOut, & bInfo );
// 获取窗口缓冲区信息
char strTitle[255];
GetConsoleTitle(strTitle, 255); // 获取窗口标题
//printf("当前窗口标题是:%s/n", strTitle);
//_getch();
SetConsoleTitle("变形实验"); // 获取窗口标题
//_getch();
COORD size = {1024, 1024};
SetConsoleScreenBufferSize(hOut,size); // 重新设置缓冲区大小
//_getch();
SMALL_RECT rc = {0,0, 1024-1, 1024-1}; // 重置窗口位置和大小
SetConsoleWindowInfo(hOut,true ,&rc);
COLORREF color = RGB(192,192,192);
SetConsoleTextAttribute(hOut,FOREGROUND_INTENSITY | FOREGROUND_BLUE);
这是设置控制台的相关操作,你查一下
其他答案
TextOut(hdc,
5, 5,
greeting, _tcslen(greeting));
把上面的5,5改成你想要输出的坐标就可以 啊
把结果输出到屏幕上,而不是程序所在的窗口里,怎样做呀?
试试这个~~~~呵呵~~~~
::TextOut(::GetDC(NULL), 100, 100, "ssss", 4);