VC++如何实现图形化界面
以下程序在Visual C++ 6.0测试通过,能够出现一个正规的Windows窗口
#pragma comment(linker,"/SUBSYSTEM:Windows /ENTRY:mainCRTStartup")#include /* 使类名成为全局变量 */TCHAR szClassName[ ] = TEXT("WindowsApp");/* 这个函数由Windows内部函数DispatchMessage()调用 */LRESULT CALLBACK WindowProcedure (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){ HDC hdc ; PAINTSTRUCT ps ; RECT rect ; switch (message) /* 处理信息 */ { case WM_DESTROY: PostQuitMessage (0); /* 发送WM_QUIT到消息队列 */ break; case WM_PAINT: hdc = BeginPaint (hWnd, &ps) ; GetClientRect (hWnd, &rect) ; DrawText (hdc, TEXT("Hello, Windows NT!"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER) ; EndPaint (hWnd, &ps) ; break ; default: /* 不处理的消息 */ return DefWindowProc (hWnd, message, wParam, lParam); } return 0;}/* 下面是主函数 */int main ( void ) { HINSTANCE hThisInstance = GetModuleHandle(NULL) ; int nFunsterStil = SW_SHOW ; HWND hWnd; /* 这是窗口的句柄 */ MSG messages;/* 应用程序的消息保存在这里 */ WNDCLASSEX wincl;/* 窗口类的数据结构 */ /* 窗口结构 */ wincl.hInstance = hThisInstance; wincl.lpszClassName = szClassName; wincl.lpfnWndProc = WindowProcedure;/* 这个函数由Windows操作系统调用 */ wincl.style = CS_DBLCLKS; /* 获取双击指令 */ wincl.cbSize = sizeof (WNDCLASSEX); /* 使用默认图标和鼠标指针 */ wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION); wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION); wincl.hCursor = LoadCursor (NULL, IDC_ARROW); wincl.lpszMenuName = NULL; /* 没有菜单 */ wincl.cbClsExtra = 0;/* 窗口类后面没有多余的字节 */ wincl.cbWndExtra = 0;/* 结构或者窗口实例 */ /* 使用窗口的默认颜色作为窗口的背景色 */ wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND; /* 注册窗口类。如果注册失败,那么就退出程序 */ if (!RegisterClassEx (&wincl)) return 0; /* 窗口类已被注册。创建它的程序 */ hWnd = CreateWindowEx ( 0, szClassName, /* 类名 */ TEXT("Windows App"), /* 窗口标题栏的文字 */ WS_OVERLAPPEDWINDOW, /* 默认窗口 */ CW_USEDEFAULT, /* 窗口左上角的位置 */ CW_USEDEFAULT, /* 窗口右下角的位置 */ 544, /* 窗口宽度(以“像素”位单位) */ 375, /* 窗口高度(以“像素”位单位) */ HWND_DESKTOP,/* 窗口是桌面的子窗口 */ NULL,/* 该窗口无菜单 */ hThisInstance, /* 程序实例的句柄 */ NULL /* 没有窗口创建的数据 */ ); /* 显示窗口 */ ShowWindow (hWnd, nFunsterStil); /* 重绘窗口 */ UpdateWindow(hWnd); /* 运行消息循环。循环到GetMessage()函数返回0 */ while (GetMessage (&messages, NULL, 0, 0)) { /* 把虚拟信息翻译成字符信息 */ TranslateMessage(&messages); /* 发送信息到窗口过程 */ DispatchMessage(&messages); } /* 返回PostQuitMessage()函数的返回值 */ return messages.wParam;}
运行结果如下:
http://jingyan.baidu.com/article/86f4a73e592b3037d65269a6.html
可以做的,不过初学c语言大多还是控制台的黑窗口界面。图形界面可以直接用windowsAPI生成界面,或使用MFC之类的架构实现窗口。建议你百度了解一下MFC相关内容,感觉蛮有意思的。
建立mfc工程然后实现您要的功能
步骤:
1、
new 选择project选项卡
2、
选择MFC AppWizard (exe) 填写相关信息点击确定就可以了
点击运行,就可以出现图形界面了,打开窗口设计文件可以添加控件到上面之类的。
算了吧!
#pragma comment(linker,"/SUBSYSTEM:Windows /ENTRY:mainCRTStartup")
#include <windows.h>
/* 使类名成为全局变量 */
TCHAR szClassName[ ] = TEXT("WindowsApp");
/* 这个函数由Windows内部函数DispatchMessage()调用 */
LRESULT CALLBACK WindowProcedure (HWND hWnd, UINT message, WPARAM wParam,LPARAM lParam)
{
HDC hdc ;
PAINTSTRUCT ps ;
RECT rect ;
switch (message) /* 处理信息 */
{
case WM_DESTROY:
PostQuitMessage (0); /* 发送WM_QUIT到消息队列 */
break;
case WM_PAINT:
hdc = BeginPaint (hWnd, &ps) ;
GetClientRect (hWnd, &rect) ;
DrawText (hdc, TEXT("Hello, Windows NT!"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
EndPaint (hWnd, &ps) ;
break ;
default: /* 不处理的消息 */
return DefWindowProc (hWnd, message, wParam, lParam);
}
return 0;
}
/* 下面是主函数 */
int main ( void )
{
HINSTANCE hThisInstance = GetModuleHandle(NULL) ;
int nFunsterStil = SW_SHOW ;
HWND hWnd; /* 这是窗口的句柄 */
MSG messages;/* 应用程序的消息保存在这里 */
WNDCLASSEX wincl;/* 窗口类的数据结构 */
/* 窗口结构 */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure;/* 这个函数由Windows操作系统调用 */
wincl.style = CS_DBLCLKS; /* 获取双击指令 */
wincl.cbSize = sizeof (WNDCLASSEX);
/* 使用默认图标和鼠标指针 */
wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL; /* 没有菜单 */
wincl.cbClsExtra = 0;/* 窗口类后面没有多余的字节 */
wincl.cbWndExtra = 0;/* 结构或者窗口实例 */
/* 使用窗口的默认颜色作为窗口的背景色 */
wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;
/* 注册窗口类。如果注册失败,那么就退出程序 */
if (!RegisterClassEx (&wincl))
return 0;
/* 窗口类已被注册。创建它的程序 */
hWnd = CreateWindowEx (
0,
szClassName, /* 类名 */
TEXT("Windows App"), /* 窗口标题栏的文字 */
WS_OVERLAPPEDWINDOW, /* 默认窗口 */
CW_USEDEFAULT, /* 窗口左上角的位置 */
CW_USEDEFAULT, /* 窗口右下角的位置 */
544, /* 窗口宽度(以“像素”位单位) */
375, /* 窗口高度(以“像素”位单位) */
HWND_DESKTOP,/* 窗口是桌面的子窗口 */
NULL,/* 该窗口无菜单 */
hThisInstance, /* 程序实例的句柄 */
NULL /* 没有窗口创建的数据 */
);
/* 显示窗口 */
ShowWindow (hWnd, nFunsterStil);
/* 重绘窗口 */
UpdateWindow(hWnd);
/* 运行消息循环。循环到GetMessage()函数返回0 */
while (GetMessage (&messages, NULL, 0, 0))
{
/* 把虚拟信息翻译成字符信息 */
TranslateMessage(&messages);
/* 发送信息到窗口过程 */
DispatchMessage(&messages);
}
/* 返回PostQuitMessage()函数的返回值 */
return messages.wParam;
}
以下程序在Visual C++ 6.0测试通过,能够出现一个正规的Windows窗口。
#pragma comment(linker,"/SUBSYSTEM:Windows /ENTRY:mainCRTStartup")
#include <windows.h>
/* 使类名成为全局变量 */
TCHAR szClassName[ ] = TEXT("WindowsApp");
/* 这个函数由Windows内部函数DispatchMessage()调用 */
LRESULT CALLBACK WindowProcedure (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
HDC hdc ;
PAINTSTRUCT ps ;
RECT rect ;
switch (message) /* 处理信息 */
{
case WM_DESTROY:
PostQuitMessage (0); /* 发送WM_QUIT到消息队列 */
break;
case WM_PAINT:
hdc = BeginPaint (hWnd, &ps) ;
GetClientRect (hWnd, &rect) ;
DrawText (hdc, TEXT("Hello, Windows NT!"), -1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER) ;
EndPaint (hWnd, &ps) ;
break ;
default: /* 不处理的消息 */
return DefWindowProc (hWnd, message, wParam, lParam);
}
return 0;
}
/* 下面是主函数 */
int main ( void )
{
HINSTANCE hThisInstance = GetModuleHandle(NULL) ;
int nFunsterStil = SW_SHOW ;
HWND hWnd; /* 这是窗口的句柄 */
MSG messages;/* 应用程序的消息保存在这里 */
WNDCLASSEX wincl;/* 窗口类的数据结构 */
/* 窗口结构 */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure;/* 这个函数由Windows操作系统调用 */
wincl.style = CS_DBLCLKS; /* 获取双击指令 */
wincl.cbSize = sizeof (WNDCLASSEX);
/* 使用默认图标和鼠标指针 */
wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL; /* 没有菜单 */
wincl.cbClsExtra = 0;/* 窗口类后面没有多余的字节 */
wincl.cbWndExtra = 0;/* 结构或者窗口实例 */
/* 使用窗口的默认颜色作为窗口的背景色 */
wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;
/* 注册窗口类。如果注册失败,那么就退出程序 */
if (!RegisterClassEx (&wincl))
return 0;
/* 窗口类已被注册。创建它的程序 */
hWnd = CreateWindowEx (
0,
szClassName, /* 类名 */
TEXT("Windows App"), /* 窗口标题栏的文字 */
WS_OVERLAPPEDWINDOW, /* 默认窗口 */
CW_USEDEFAULT, /* 窗口左上角的位置 */
CW_USEDEFAULT, /* 窗口右下角的位置 */
544, /* 窗口宽度(以“像素”位单位) */
375, /* 窗口高度(以“像素”位单位) */
HWND_DESKTOP,/* 窗口是桌面的子窗口 */
NULL,/* 该窗口无菜单 */
hThisInstance, /* 程序实例的句柄 */
NULL /* 没有窗口创建的数据 */
);
/* 显示窗口 */
ShowWindow (hWnd, nFunsterStil);
/* 重绘窗口 */
UpdateWindow(hWnd);
/* 运行消息循环。循环到GetMessage()函数返回0 */
while (GetMessage (&messages, NULL, 0, 0))
{
/* 把虚拟信息翻译成字符信息 */
TranslateMessage(&messages);
/* 发送信息到窗口过程 */
DispatchMessage(&messages);
}
/* 返回PostQuitMessage()函数的返回值 */
return messages.wParam;
}
直接用windowsAPI生成界面,或使用MFC之类的架构实现窗口。
可以在在窗口上面绘制,一般比较容易实现的是使用界面库。
VC++如何实现图形化界面
1、new 选择project选项卡 2、选择MFC AppWizard (exe) 填写相关信息点击确定就可以了 点击运行,就可以出现图形界面了,打开窗口设计文件可以添加控件到上面之类的。算了吧!pragma comment(linker,"\/SUBSYSTEM:Windows \/ENTRY:mainCRTStartup")#include <windows.h>\/* 使类名成为全局变量 *\/TCHAR sz...
怎么使用编程语言程序“实现可视化界面”?
2.Qt,这是一个跨平台的c++图形用户开发框架,易学易用,很快就能上手,相对于MFC来说,学起来能更快一些,比较简单,自带的QtDesigner可以更快的设计用户界面,更灵活,也更方便:python开发GUI 1.第一个就是python自带的Tkinter包,基本可以满足小的GUI程序的开发,但是资料比较少,开发起来也不够灵活...
怎么用C++写图形界面程序
1、直接调用SDK API函数,像C语言一样,2、用MFC类库,3、用.Net Framework类库(需要使用microsoft对C++的扩展语法),来开发托管运行的程序,
利用C++编程怎么样让运行出来的EXE文件是图形界面的啊
用VC要简单一些 下面是C++的一个简单:include <iostream> using namespace std;int main(){ char s;int x,y,z;cin>>x>>y;z=x>y?x:y;cout << z<<endl;cout <<" ___"<<endl;cout <<"| |"<<endl;cout <<"| 写入: "<<x<<y<<" |"<<endl;cout <<"| ...
C语言图形界面怎么做出来
这是最简单的界面程序 : \/\/ c++.cpp : 定义应用程序的入口点。\/\/ include "stdafx.h"include "c++.h"define MAX_LOADSTRING 100 \/\/ 全局变量:HINSTANCE hInst;\/\/ 当前实例 TCHAR szTitle[MAX_LOADSTRING];\/\/ 标题栏文本 TCHAR szWindowClass[MAX_LOADSTRING];\/\/ 主窗口类名 \/\/ 此代码模块中...
如何用C语言编程出可视化界面
C语言是一种过程化的编程语言,而C++、VB和Java则是面向对象的语言。目前,大多数的图形界面程序都是使用面向对象的语言编写的,比如C++。C++不仅兼容C语言的语法,还能够利用Visual C++环境下的MFC库来实现图形界面程序。因此,尽管C语言本身并不特别适合开发图形界面程序,但这并不意味着它完全不能实现...
c++用什么写界面
首先,Windows API是Microsoft Windows 32位平台的应用程序编程接口。这个API提供了数千个可调用的函数,覆盖了用户界面服务、图形多媒体服务等多个领域,非常适合用于图形界面的开发。通过调用这些函数,开发者可以创建复杂的用户界面,如对话框、按钮、窗口等。其次,MFC以C++类的形式封装了Windows API。它...
devC++中如何编写可视化用户界面
窗口界面不是编译器的问题,是每个操作系统或者是库的支持的问题。你在devc上新建一个win32工程,然后试一下这段代码:int WINAPI WinMain(HINSTANCE ht, HINSTANCE hP, LPSTR cmdline, int show){ MessageBox(NULL, TEXT("Hello"),TEXT("Hello"), MB_YESNO);return 0;} 这就是最简单的Windows...
图形界面怎么实现scanf功能
要学C++ 然后再学MFC 就可以做图形用户界面了 在MFC下 方法很多 1 GetDlgItem(控件ID)->GetWindowText()\/\/获取控件方框的值 GetDlgItem(控件ID)->SetWindowText(值); \/\/设置控件方框的值 2 设置 DDX 类向导 member 然后UpdateData(true);UpdateData(false);3 使用CEDIT 4 发消息SendMessage ...
.C++怎么去编写那种有窗口界面的程序
1、首先打开QtCreator应用程序,新建一个qt工程。2、然后灯工程建立完毕,代码编辑界面出现,双击左侧的dialog.ui,将会打开图形界面编辑器。3、然后在中间的窗口中拖入一个按钮,一个文本框。左键按住Push Button按钮和Line Edit按钮不放,拖到界面上。4、然后把窗口的大小调整到想要的样式。5、然后点击...