不创建窗体,能不能直接调用api,在屏幕上某个位置,显示一句话?

a89657896326854 2012-09-07 11:06:37
是不是不行?
是不是必须注册窗体,才能在屏幕上显示内容?
...全文
167 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
yyyyy_3 2012-09-11
  • 打赏
  • 举报
回复
必须有窗口
「已注销」 2012-09-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
不行,我的代码:
C/C++ code
using namespace std;
#include <iostream>
#include <stdio.h>
#include <windows.h>

int main()
{
……
[/Quote]
你给 hDC 传个空置当然不行了,前面 GetDC 就是给后面 TextOut 用的。
chuanxin8989 2012-09-11
  • 打赏
  • 举报
回复
这不能控制输出位置吧
用户 昵称 2012-09-11
  • 打赏
  • 举报
回复
win32 控制台工程。
tbg1986tbg 2012-09-07
  • 打赏
  • 举报
回复
我是创建个对话框程序,点击一个按钮,在桌面上显示一行文字的。。
tbg1986tbg 2012-09-07
  • 打赏
  • 举报
回复
// TODO: Add your command handler code here
// CDC * pDC = CWnd::GetDesktopWindow()->GetDC();
// pDC ->TextOut(0 ,0, "font");
CWindowDC dc(NULL);

CFont myFont;
myFont.CreateFont (
120, // nHeight 字体高度
40, // nWidth 字体宽度
0, // nEscapement 显示角度
0, // nOrientation 字体角度
FW_NORMAL, // nWeight 字体磅值
FALSE, // bItalic 是否倾斜
FALSE, // bUnderline 是否斜体
0, // cStrikeOut 是否加删除线
ANSI_CHARSET, // nCharSet 指定字符集
OUT_DEFAULT_PRECIS, // nOutPrecision 指定输出精度
CLIP_DEFAULT_PRECIS, // nClipPrecision 指定剪切精度
DEFAULT_QUALITY, // nQuality 指定输出质量
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily 字符族
"Arial"); // 指定字体的字样名

CFont* oldFont = dc.SelectObject ( &myFont);
dc.SetTextColor (RGB (255,0,0));

dc.SetBkMode ( TRANSPARENT); //背景模式为透明

dc.TextOut(200,200,"屏幕上显示文字");

dc.SelectObject ( oldFont);

这样字看看
a89657896326854 2012-09-07
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]

GetDC(NULL)
TextOut/DrawText(...);
ReleaseDC();
[/Quote]


不行,我的代码:


using namespace std;
#include <iostream>
#include <stdio.h>
#include <windows.h>

int main()
{

GetDC(0);
TextOut(NULL,100,100,"H",50);

cout<<"finished!"<<endl;
int ii;
cin>>ii;
return 0;
}


Eleven 2012-09-07
  • 打赏
  • 举报
回复
GetDC(NULL)
TextOut/DrawText(...);
ReleaseDC();
a89657896326854 2012-09-07
  • 打赏
  • 举报
回复
不是窗体。而是显示器上吧。


[Quote=引用 1 楼 的回复:]

屏幕上?是什么意思。电脑桌面上吗。还是一个窗体上?
[/Quote]
tbg1986tbg 2012-09-07
  • 打赏
  • 举报
回复
屏幕上?是什么意思。电脑桌面上吗。还是一个窗体上?
a89657896326854 2012-09-07
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 的回复:]

C/C++ code
#include "stdafx.h"

#include <Windows.h>

int _tmain(int argc, _TCHAR* argv[])
{
HDC hdc = GetDC(NULL);
TCHAR szText[] = _T("Hello, World!!!");
TextOut(hdc, 10, 10, szText, _……
[/Quote]

厉害,你的代码是对的,成功了!


using namespace std;
#include <iostream>
#include <stdio.h>
#include <windows.h>

int main()
{
HDC hdc = GetDC(NULL);
char szText[] = ("1");
TextOut(hdc, 10, 10, szText, 1);
ReleaseDC(NULL, hdc);
cout<<"finished!"<<endl;
int ii;
cin>>ii;
return 0;
}




Eleven 2012-09-07
  • 打赏
  • 举报
回复
#include "stdafx.h"

#include <Windows.h>

int _tmain(int argc, _TCHAR* argv[])
{
HDC hdc = GetDC(NULL);
TCHAR szText[] = _T("Hello, World!!!");
TextOut(hdc, 10, 10, szText, _tcslen(szText));
ReleaseDC(NULL, hdc);
return 0;
}
a89657896326854 2012-09-07
  • 打赏
  • 举报
回复
能不能不创建任何对话框、窗体之类的东西啊?

我是想,只是建立一个普通的c程序,然后,调用api,进行界面显示。

不知道能否做到?


[Quote=引用 6 楼 的回复:]

我是创建个对话框程序,点击一个按钮,在桌面上显示一行文字的。。
[/Quote]

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧