积分 6709 最后登录 2024-4-23 精华 0 阅读权限 220 主题 145 UID 3887572 帖子 2897 PB币 3573 威望 925 贡献 0 技术 801 活跃 4722
14N.M.
UID 3887572 帖子 2897 PB币 3573 贡献 0 技术 801 活跃 4722
依文 发表于 2015-7-3 23:12
小弟弟啊,小弟弟,说你小学没毕业你还不认。
你还能低能点么?非要逼我骂人是不是?Photos App如何打 ...
是不是要比我上GDI抗锯齿代码???
#define WIN32_LEAN_AND_MEAN // 从 Windows 头文件中排除极少使用的信息
// Windows 头文件:
#include <windows.h>
// C 运行时头文件
#include <stdlib.h>
#include <malloc.h>
#include <memory.h>
#include <tchar.h>
//指定程序的入口以减小生成大小
//#pragma comment(linker, "/entry:wWinMain")
// TODO: 在此处引用程序需要的其他头文件
#include <CommCtrl.h>
#pragma comment(lib,"comctl32.lib")
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
LRESULT CALLBACK WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow)
{
//注册窗口类
WNDCLASSEXW wcex;
wcex.cbSize = sizeof(WNDCLASSEXW);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hIcon = LoadIconW(hInstance, MAKEINTRESOURCEW(IDI_NCLEANER));
wcex.hCursor = NULL;
wcex.lpszMenuName = NULL;
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wcex.lpszClassName = L"NCleaner_MainWindow";
wcex.hIconSm = LoadIcon(hInstance, MAKEINTRESOURCEW(IDI_SMALL));
RegisterClassExW(&wcex);
// 创建窗口
HWND hwnd = CreateWindowExW(
NULL, //窗口的扩展风格
wcex.lpszClassName, //类名,要和刚才注册的一致
L"GDI抗锯齿", //窗口标题文字
WS_OVERLAPPEDWINDOW, //窗口外观样式
CW_USEDEFAULT, //窗口相对于父级的X坐标
CW_USEDEFAULT, //窗口相对于父级的Y坐标
CW_USEDEFAULT, //窗口的宽度
CW_USEDEFAULT, //窗口的高度
NULL, //没有父窗口,为NULL
NULL, //没有菜单,为NULL
hInstance, //当前应用程序的实例句柄
NULL); //没有附加数据,为NULL
if (hwnd == NULL) return 0; //检查窗口是否创建成功
// 显示窗口
ShowWindow(hwnd, SW_SHOW);
// 更新窗口
UpdateWindow(hwnd);
// 消息循环
MSG msg;
while (GetMessage(&msg, NULL, 0, 0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
}
// 在WinMain后实现
LRESULT CALLBACK WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)
{
case WM_DESTROY:
{
PostQuitMessage(0);
break;
}
case WM_PAINT:
{
PAINTSTRUCT ps;
BeginPaint(hwnd, &ps);
HFONT hFont = CreateFontW(
200,100,0,0,FW_BOLD,false,false,false,NULL,
OUT_CHARACTER_PRECIS,CLIP_CHARACTER_PRECIS,
/*ANTIALIASED_QUALITY*/ NULL,FF_MODERN,L"微软雅黑");
SelectObject(ps.hdc, hFont);
TEXTMETRIC tm;
// 取得与文本相关的数据
GetTextMetricsW(ps.hdc, &tm);
RECT rect;
rect.top = 0L;
rect.left = ps.rcPaint.left;
rect.right = ps.rcPaint.right;
rect.bottom = rect.top + tm.tmHeight;
DrawTextW(ps.hdc, L"低头思故乡", -1, &rect, NULL);
rect.top += tm.tmHeight;
rect.bottom += tm.tmHeight;
hFont = CreateFontW(
200, 100, 0, 0, FW_BOLD, false, false, false, NULL,
OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS,
ANTIALIASED_QUALITY, FF_MODERN, L"微软雅黑");
SelectObject(ps.hdc, hFont);
DrawTextW(ps.hdc, L"低头思故乡", -1, &rect, DT_BOTTOM);
}
}
return DefWindowProc(hwnd, uMsg, wParam, lParam);
} 复制代码
运行效果(一行是有锯齿,一行无锯齿;我相信你眼没瞎)
没有经过实践前的任何肯定措辞都是扯淡!
展开阅读全文​