栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C/C++ 实现一个简单的文本编辑器(windows程序设计)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C/C++ 实现一个简单的文本编辑器(windows程序设计)

一.实现目的

为了更好的学习QT中的窗口、句柄等概念,先对Windows编程进行了大体了解,通过一个简单文本编辑器的实现,来加深对这些基本概念的理解。

二.具体实现
//! C/C++语言Windows程序设计 -> 简易文本编辑器 -> 演示
#include 
#include 
#include 
#include 

//! 各控件所使用的ID
#define ID_EDITBOX    1      //< 文本编辑框控件
#define ID_TXTPATH    2      //< 路径编辑框控件
#define ID_SAVEBTN    3      //< 保存文件按钮
#define ID_CLSBTN    4       //< 清空编辑区按钮
#define ID_GROUP    5        //< 组合框

LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);

int CreateChildWindow(HWND, HWND*, LPARAM);          //< 创建将使用到的子窗口控件

int SavaInputContent(TCHAR*, TCHAR*);                //< 保存输入的文字到文件

char* UnicodeToUtf8(const wchar_t* unicode);

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, 
	PSTR szCmdLine, int iCmdShow)
{
	static TCHAR szAppName[] = TEXT("demo");
	HWND         hwnd;
	MSG          msg;
	WNDCLASS     wndclass;

	wndclass.style            = CS_HREDRAW | CS_VREDRAW;
	wndclass.lpfnWndProc      = WndProc;
	wndclass.hInstance        = hInstance;
	wndclass.cbClsExtra       = 0;
	wndclass.cbWndExtra       = 0;
	wndclass.hbrBackground    = CreateSolidBrush(RGB(236, 233, 216));
	wndclass.hCursor          = LoadCursor(NULL, IDC_ARROW);
	wndclass.hIcon            = LoadIcon(NULL, IDI_APPLICATION);
	wndclass.lpszClassName    = szAppName;
	wndclass.lpszMenuName     = NULL;

	if(!RegisterClass(&wndclass))
	{
		MessageBox(NULL, TEXT("Unable to register the window class!"), 
			TEXT("error"), MB_OK | MB_ICONERROR);
		return 0;
	}

	hwnd = CreateWindow(szAppName, 
		TEXT("Simple text editor -> demo"), WS_OVERLAPPEDWINDOW,
		CW_USEDEFAULT, CW_USEDEFAULT,
		CW_USEDEFAULT, CW_USEDEFAULT,
		NULL, NULL, hInstance, NULL);

	ShowWindow(hwnd, iCmdShow);
	UpdateWindow(hwnd);

	while(GetMessage(&msg, NULL, 0, 0))
	{
		TranslateMessage(&msg);
		DispatchMessage(&msg);
	}

	return msg.wParam;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/916884.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号