1.codeblockså¦ä½å¼åwin32 guiç¨åº
2.本人是学程序设计的,想了解下最基本的程序源码,怎样变成像WINDOWS上这样窗口化的软件?
3.推荐8款常用的Python GUI图形界面开发框架!
codeblockså¦ä½å¼åwin32 guiç¨åº
1ï¼é¦å å建ä¸ä¸ªWin GUI project1:ç¹å»Create a new project2:ç¹å»Win GUI projectï¼å¹¶ç¹å»Go
3:ç¹å»Next>
4:è¾å ¥æ¹é¡¹ç®çåºæ¬ä¿¡æ¯ï¼å¹¶ç¹å»Next>5:æåç¹å»Finish2:å¨ä¸é¢ç¼è¾æºç å³å¯本人是学程序设计的,想了解下最基本的程序源码,怎样变成像WINDOWS上这样窗口化的离岛溯源码消费者不能看吗软件?
呵呵,一年半前我和你一样,也处于这个状态,如果你做windows的程序设计的话,编程像windows这样的窗口化的软件,你必须接触VS,旗下的VC++或VC#,你学完c和c++先接触VC++的MFC较为容易,使用MFC APP向导可以直接生成你所说的windows这样窗口程序,刚开始你是不知道如何生成的,为此你需要边学windows程序设计,建议使用《windows程序设计》,iapp王者美化源码里面介绍了一个基本窗体生成的原理和步骤。如果你要学VC#,那你得先学C#,离做一个windows这样窗口程序比较远,而且也不知道它生成的原理,当然既然c和c++学的不错的话,c#入门也不难。如下是spring bean源码解读一个窗体生成的windows源码:
/*--------------------------------------
CLOCK.C -- Analog Clock Program
(c) Charles Petzold,
--------------------------------------*/
#include <windows.h>
#include <math.h>
LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
PSTR szCmdLine, int iCmdShow)
{
static TCHAR szAppName[] = TEXT ("Clock") ;
HWND hwnd;
MSG msg;
WNDCLASS wndclass ;
wndclass.style = CS_HREDRAW | CS_VREDRAW ;
wndclass.lpfnWndProc = WndProc ;
wndclass.cbClsExtra = 0 ;
wndclass.cbWndExtra = 0 ;
wndclass.hInstance = hInstance ;
wndclass.hIcon = NULL ;
wndclass.hCursor = LoadCursor (NULL, IDC_ARROW) ;
wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH) ;
wndclass.lpszMenuName = NULL ;
wndclass.lpszClassName = szAppName ;
if (!RegisterClass (&wndclass))
{
MessageBox (NULL, TEXT ("Program requires Windows NT!"),
szAppName, MB_ICONERROR) ;
return 0 ;
}
hwnd = CreateWindow (szAppName, TEXT ("GDI Test"),
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 ;
}
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
static HDC hdc;
static PAINTSTRUCT ps;
static COLORREF color;
static UINT ixClient,iyClient;
static RECT rtWindow , rtClient;
switch (message)
{
case WM_CREATE :
GetWindowRect( hwnd , &rtWindow );
GetClientRect( hwnd , &rtClient );
return 0 ;
case WM_NCPAINT:
hdc = GetWindowDC( hwnd );
color = GetPixel( hdc , , 5 );
SetBkColor( hdc , color );
SetTextColor( hdc , RGB(,0,0) );
TextOut( hdc , , ,
"Editor : CM" , strlen("Editor : CM") );
ReleaseDC( hwnd , hdc );
return 0;
case WM_SIZE :
ixClient = LOWORD( wParam );
iyClient = HIWORD( wParam );
return 0 ;
case WM_TIMER :
return 0 ;
case WM_PAINT :
hdc = BeginPaint (hwnd, &ps) ;
TextOut( hdc , , , "Editor : CM" , strlen("Editor : CM") );
EndPaint (hwnd, &ps) ;
return 0 ;
case WM_DESTROY :
PostQuitMessage(0);
return 0 ;
}
return DefWindowProc (hwnd, message, wParam, lParam) ;
}
推荐8款常用的Python GUI图形界面开发框架!
推荐8款常用的Python GUI图形界面开发框架!
Kivy是一个开源工具包,旨在让开发者使用相同源代码创建跨平台运行的程序,特别关注创新型用户界面开发,如多点触摸应用程序。Kivy内置多种功能,包括动画、缓存、易语言2000源码手势和绘图处理,并提供了如按钮、摄像机、表格、滑块和树形控件等用户界面控件。
Flexx是一个纯Python工具包,用于创建图形化界面应用程序。它利用Web技术进行界面渲染,织梦租车源码支持创建桌面应用,并可导出为独立HTML文档。Flexx是跨平台的,仅需Python和浏览器即可运行,特别推荐在Firefox中使用桌面模式。
PyQt是Qt库的Python版本,支持Qt1到Qt3和Qt4,提供GPL版和商业版。PyQt允许开发者创建完整的、功能键全的GUI用户界面。
wxPython是一款优秀的GUI图形库,允许Python程序员方便地创建完整的GUI用户界面。wxPython是基于wxWidgets的Python封装和Python模块,具有跨平台能力,运行于多种操作系统。
Tkinter是Tk图形用户界面工具包的标准Python接口。Tk是一个轻量级的跨平台GUI开发工具,适用于多种Unix平台、Windows和Macintosh系统。
Pywin允许开发者以类似于Visual C++的形式使用Python开发Win应用。代码风格可选择类似于Win SDK或MFC。
PyGTK让你用Python轻松创建具有图形用户界面的程序。底层的GTK+提供了各种可视元素和功能,适用于GNOME桌面系统运行的软件开发。
pyui4win是一个开源界面库,支持C++和Python。它提供自绘技术,使开发者能快速实现类似于QQ和安全卫士的绚丽界面,并具备所见即所得界面设计器,适用于C++和Python开发人员。