windows API 开发飞机订票系统(一)

来源:互联网 发布:淘宝卖家心怎么升级 编辑:程序博客网 时间:2024/05/20 16:01

课程设计做一个飞机订票系统,c语言实现,功能如下:


录入:

  可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)

  查询:

  可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);

  可以输入起飞抵达城市,查询飞机航班情况;

  订票:(订票情况可以存在一个数据文件中,结构自己设定)

  可以订票,如果该航班已经无票,可以提供相关可选择航班;

  退票: 可退票,退票后修改相关数据文件;

  客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。

  修改航班信息:

  当航班信息改变可以修改航班数据文件

  要求:

  根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;


写惯了控制台程序,所以打算做个界面出来,时间也很充裕,于是就自学了windows API,开发环境为vs2013。

代码以及程序已打包,下载地址:http://download.csdn.net/download/u013805360/8213827

下面就开始一步一步晒代码了


下面代码是头文件

// stdafx.h : 标准系统包含文件的包含文件,// 或是经常使用但不常更改的// 特定于项目的包含文件//#pragma once#define _CRT_SECURE_NO_WARNINGS#define _CRT_NON_CONFORMING_SWPRINTFS#define WIN32_LEAN_AND_MEAN             //  从 Windows 头文件中排除极少使用的信息// Windows 头文件: #include <windows.h>// C 运行时头文件#include <stdlib.h>#include <math.h>#include <malloc.h>#include <memory.h>#include <tchar.h>#include <string.h>#include <stdio.h>// 包括 SDKDDKVer.h 将定义可用的最高版本的 Windows 平台。#include <SDKDDKVer.h>// TODO:  在此处引用程序需要的其他头文件#include<commctrl.h>#include "resource.h"#pragma comment(lib, "comctl32.lib")


下面是资源头文件

//{{NO_DEPENDENCIES}}// Microsoft Visual C++ 生成的包含文件。// 供 Flight.rc 使用//#define IDC_MYICON                      2#define IDOK2                           2#define IDD_MYHOMEWORK_DIALOG           102#define IDD_ABOUTBOX                    103#define IDD_LOGINDLG                    103#define IDI_ICON1                       128#define IDB_BITMAP1                     133#define IDR_MAINFRAME                   134#define IDD_MAINDLG                     136#define IDD_NAMEDLG                     138#define IDB_BITMAP2                     144#define IDD_FLTNUM                      147#define IDD_ENTRY                       149#define IDD_MODIFYFLT                   150#define IDC_ID                          1002#define IDC_PASSWORD                    1003#define IDC_IDEDIT                      1005#define IDC_PSWEDIT                     1006#define IDC_LOGIN                       1007#define IDC_REGISTER                    1008#define IDC_IMAGE                       1009#define IDC_GETNAMEOK                   1011#define IDC_GETNAME                     1012#define IDC_GETNAMECANCEL               1014#define IDC_DEPARTURE                   1019#define IDC_DESTINATION                 1020#define IDC_FLIGHTNUM                   1021#define IDC_FLTNUM                      1022#define IDC_FARE                        1023#define IDC_LANDINGTIME                 1024#define IDC_DATE                        1037#define IDC_SEARCH                      1038#define IDC_TICKET                      1039#define IDC_RETURNTICKET                1040#define IDC_ENTRY                       1041#define IDC_MODIFYFLIGHT                1042#define IDC_INFORMATION                 1043#define IDC_TICKETNUM                   1044#define IDC_TAKEOFFTIME                 1051#define IDC_SEATNUM                     1053#define IDC_DISCOUNT                    1054#define IDC_ADDFLT                      1055#define IDC_QUIT                        1056#define IDC_MDFFLTNUM                   1058#define IDC_MDFDATE                     1059#define IDC_MODIFY                      1060#define IDC_STATIC                      -1// Next default values for new objects// #ifdef APSTUDIO_INVOKED#ifndef APSTUDIO_READONLY_SYMBOLS#define _APS_NO_MFC                     1#define _APS_NEXT_RESOURCE_VALUE        152#define _APS_NEXT_COMMAND_VALUE         32771#define _APS_NEXT_CONTROL_VALUE         1064#define _APS_NEXT_SYMED_VALUE           110#endif#endif

资源文件:

// Microsoft Visual C++ generated resource script.//#include "resource.h"#define APSTUDIO_READONLY_SYMBOLS///////////////////////////////////////////////////////////////////////////////// Generated from the TEXTINCLUDE 2 resource.//#define APSTUDIO_HIDDEN_SYMBOLS#include "windows.h"#undef APSTUDIO_HIDDEN_SYMBOLS/////////////////////////////////////////////////////////////////////////////#undef APSTUDIO_READONLY_SYMBOLS/////////////////////////////////////////////////////////////////////////////// 中文(简体,中国) resources#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED///////////////////////////////////////////////////////////////////////////////// Dialog//IDD_LOGINDLG DIALOGEX 230, 120, 307, 175STYLE DS_SETFONT | DS_MODALFRAME | DS_FIXEDSYS | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENUCAPTION "登陆"FONT 9, "MS Shell Dlg", 0, 0, 0x1BEGIN    CTEXT           "身份证号",IDC_ID,99,60,31,8,SS_CENTERIMAGE    CONTROL         IDB_BITMAP1,IDC_IMAGE,"Static",SS_BITMAP,14,19,74,103    CTEXT           "密码",IDC_PASSWORD,99,87,31,8,SS_CENTERIMAGE    EDITTEXT        IDC_IDEDIT,138,58,116,13,ES_AUTOHSCROLL    EDITTEXT        IDC_PSWEDIT,138,84,116,13,ES_PASSWORD | ES_AUTOHSCROLL | ES_WANTRETURN    CTEXT           "灰机订票系统",IDC_STATIC,105,18,111,24,SS_CENTERIMAGE    DEFPUSHBUTTON   "登陆",IDC_LOGIN,139,118,39,17    PUSHBUTTON      "注册",IDC_REGISTER,202,118,39,17ENDIDD_MAINDLG DIALOGEX 0, 0, 358, 226STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENUCAPTION "飞机订票系统"FONT 10, "Microsoft YaHei UI", 400, 0, 0x86BEGIN    CTEXT           "欢迎来到飞机订票系统",IDC_STATIC,145,16,67,8    EDITTEXT        IDC_DEPARTURE,38,39,57,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    EDITTEXT        IDC_DESTINATION,130,39,57,12,ES_AUTOHSCROLL | ES_WANTRETURN    CONTROL         "出发地:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,9,41,24,11    CONTROL         "目的地:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,102,41,24,11    CONTROL         "日期:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,102,70,18,8    CTEXT           "航班号:",IDC_STATIC,10,70,26,8    CTEXT           "航班信息",IDC_STATIC,16,120,31,8    CONTROL         IDB_BITMAP2,IDC_STATIC,"Static",SS_BITMAP,271,27,75,70    EDITTEXT        IDC_FLIGHTNUM,38,68,57,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CONTROL         "",IDC_DATE,"SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,130,68,57,12    DEFPUSHBUTTON   "查询",IDC_SEARCH,38,96,33,14    PUSHBUTTON      "订票",IDC_TICKET,95,96,33,14    PUSHBUTTON      "退票",IDC_RETURNTICKET,152,96,33,14    PUSHBUTTON      "航班录入",IDC_ENTRY,229,52,43,15    PUSHBUTTON      "修改航班信息",IDC_MODIFYFLIGHT,229,81,43,15    EDITTEXT        IDC_INFORMATION,18,131,322,88,ES_MULTILINE | ES_AUTOVSCROLL | ES_AUTOHSCROLL | ES_READONLY | WS_VSCROLL | WS_HSCROLLENDIDD_NAMEDLG DIALOGEX 0, 0, 260, 116STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENUCAPTION "注册"FONT 9, "Microsoft YaHei UI", 400, 0, 0x86BEGIN    EDITTEXT        IDC_GETNAME,99,47,81,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CTEXT           "请输入用户真实姓名",IDC_STATIC,98,21,63,8    CTEXT           "姓名:",IDC_STATIC,61,49,33,11    DEFPUSHBUTTON   "确认提交",IDC_GETNAMEOK,78,83,44,16,WS_GROUP    PUSHBUTTON      "取消",IDC_GETNAMECANCEL,146,83,44,16ENDIDD_FLTNUM DIALOGEX 0, 0, 181, 87STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENUCAPTION "机票数量"FONT 10, "Microsoft YaHei UI", 400, 0, 0x86BEGIN    EDITTEXT        IDC_TICKETNUM,72,35,37,12,ES_AUTOHSCROLL    CONTROL         "机票数量:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,37,37,33,8    DEFPUSHBUTTON   "确定",IDOK,126,34,31,13ENDIDD_ENTRY DIALOGEX 0, 0, 266, 153STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENUCAPTION "航班录入"FONT 10, "Microsoft YaHei UI", 400, 0, 0x0BEGIN    CONTROL         "请输入录入航班信息",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,103,18,59,8    EDITTEXT        IDC_DEPARTURE,41,35,31,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    EDITTEXT        IDC_DESTINATION,123,35,31,12,ES_AUTOHSCROLL | ES_WANTRETURN    CONTROL         "出发地:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,16,36,24,11    CONTROL         "目的地:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,98,36,24,8    CONTROL         "日期:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,174,98,18,8    CTEXT           "航班号:",IDC_STATIC,16,67,26,8    EDITTEXT        IDC_TAKEOFFTIME,206,35,35,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CONTROL         "价格:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,98,67,24,8    CONTROL         "座位数:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,16,98,24,8    CONTROL         "折扣:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,98,98,24,8    EDITTEXT        IDC_FLTNUM,41,65,31,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    EDITTEXT        IDC_FARE,123,65,31,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    EDITTEXT        IDC_LANDINGTIME,206,65,35,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CONTROL         "起飞时间:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,174,36,30,8    CONTROL         "降落时间:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,174,67,30,8    EDITTEXT        IDC_SEATNUM,41,96,31,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    EDITTEXT        IDC_DISCOUNT,123,96,31,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CONTROL         "",IDC_DATE,"SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,198,96,57,12    DEFPUSHBUTTON   "添加",IDC_ADDFLT,75,120,37,15    PUSHBUTTON      "退出",IDC_QUIT,153,120,37,15ENDIDD_MODIFYFLT DIALOGEX 0, 0, 323, 200STYLE DS_SETFONT | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_CAPTION | WS_SYSMENUCAPTION "航班录入"FONT 10, "Microsoft YaHei UI", 400, 0, 0x0BEGIN    EDITTEXT        IDC_MDFFLTNUM,59,34,44,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CTEXT           "航班号:",IDC_STATIC,28,36,26,8    GROUPBOX        "请输入要修改的信息",IDC_STATIC,7,65,309,128    LTEXT           "请输入修改航班航班号",IDC_STATIC,10,14,65,8    CTEXT           "日期:",IDC_STATIC,149,36,26,8    CONTROL         "",IDC_MDFDATE,"SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,175,34,57,12    EDITTEXT        IDC_FARE,56,96,28,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CONTROL         "价格:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,23,99,24,8    CONTROL         "座位数:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,198,99,24,8    CONTROL         "折扣:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,110,99,24,8    EDITTEXT        IDC_DISCOUNT,144,96,31,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    EDITTEXT        IDC_SEATNUM,228,96,31,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    CONTROL         "起飞时间:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,23,136,30,8    CONTROL         "降落时间:",IDC_STATIC,"Static",SS_LEFTNOWORDWRAP | WS_GROUP,111,136,30,8    EDITTEXT        IDC_TAKEOFFTIME,56,133,35,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    EDITTEXT        IDC_LANDINGTIME,144,133,35,12,ES_AUTOHSCROLL | ES_WANTRETURN | WS_GROUP    DEFPUSHBUTTON   "确认修改",IDC_MODIFY,104,168,37,15    PUSHBUTTON      "退出",IDC_QUIT,182,168,37,15END///////////////////////////////////////////////////////////////////////////////// DESIGNINFO//#ifdef APSTUDIO_INVOKEDGUIDELINES DESIGNINFOBEGIN    IDD_LOGINDLG, DIALOG    BEGIN        LEFTMARGIN, 7        RIGHTMARGIN, 300        TOPMARGIN, 7        BOTTOMMARGIN, 168    END    IDD_MAINDLG, DIALOG    BEGIN        LEFTMARGIN, 7        RIGHTMARGIN, 351        TOPMARGIN, 6        BOTTOMMARGIN, 220    END    IDD_NAMEDLG, DIALOG    BEGIN        LEFTMARGIN, 7        RIGHTMARGIN, 253        TOPMARGIN, 7        BOTTOMMARGIN, 108    END    IDD_FLTNUM, DIALOG    BEGIN        LEFTMARGIN, 7        RIGHTMARGIN, 174        TOPMARGIN, 7        BOTTOMMARGIN, 80    END    IDD_ENTRY, DIALOG    BEGIN        LEFTMARGIN, 7        RIGHTMARGIN, 259        TOPMARGIN, 7        BOTTOMMARGIN, 146    END    IDD_MODIFYFLT, DIALOG    BEGIN        LEFTMARGIN, 7        RIGHTMARGIN, 316        TOPMARGIN, 7        BOTTOMMARGIN, 193    ENDEND#endif    // APSTUDIO_INVOKED#ifdef APSTUDIO_INVOKED///////////////////////////////////////////////////////////////////////////////// TEXTINCLUDE//1 TEXTINCLUDE BEGIN    "resource.h\0"END2 TEXTINCLUDE BEGIN    "#ifndef APSTUDIO_INVOKED\r\n"    "#include ""targetver.h""\r\n"    "#endif\r\n"    "#define APSTUDIO_HIDDEN_SYMBOLS\r\n"    "#include ""windows.h""\r\n"    "#undef APSTUDIO_HIDDEN_SYMBOLS\r\n"    "\0"END3 TEXTINCLUDE BEGIN    "\r\n"    "\0"END#endif    // APSTUDIO_INVOKED///////////////////////////////////////////////////////////////////////////////// Bitmap//IDB_BITMAP1             BITMAP                  "login_2.bmp"IDB_BITMAP2             BITMAP                  "main_2.bmp"IDB_BITMAP3             BITMAP                  "login.bmp"IDB_BITMAP4             BITMAP                  "main.bmp"///////////////////////////////////////////////////////////////////////////////// Icon//// Icon with lowest ID value placed first to ensure application icon// remains consistent on all systems.IDI_ICON1               ICON                    "icon.ico"#endif    // 中文(简体,中国) resources/////////////////////////////////////////////////////////////////////////////#ifndef APSTUDIO_INVOKED///////////////////////////////////////////////////////////////////////////////// Generated from the TEXTINCLUDE 3 resource.///////////////////////////////////////////////////////////////////////////////#endif    // not APSTUDIO_INVOKED


具体实现代码见下篇博文吧,写代码的过程中还是遇到不少问题的。先附几张程序效果图,包含了一些个人二次元爱好....







0 0
原创粉丝点击