第六章 結論
B.1 GUI…
本手冊提供各個函式用途及參數說明,分為 GUI、DBAccess、
Network、Server 與網站幾部分。
SystemMain:
說明:為主要框架的類別,繼承 QMainWindow 而來
SystemMain(DBAccess *dba, Qwidget *parent = 0, const char *name = 0, Wflags f = Wtype_TopLevel);
說明:建構子,用來建構主要框架。
參數說明:
DBAccess *dba: 指定資料庫(input) QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input) Wflags f: Widget 的層級(input)
~SystemMain();
說明:解構子。
void reload();
說明:重新更新整個視窗的函式 void moveEvent(QMoveEvent *);
說明:視窗移動的 Event 物件 void langSel_slot();
說明:語言切換的 Slot void toMetro_slot();
說明:切換到捷運模組的 Slot void toBus_slot();
說明:切換到公車模組的 Slot void toAir_slot();
說明:切換到航班模組的 Slot void toUpdate_slot();
說明:切換到更新模組的 Slot void toH2use_slot();
說明:切換到說明的 Slot void toSchedule();
說明:切換到排程模組的 Slot void back_slot();
說明:回到上一頁的 Slot
void toMetro2_slot(const QString &, const QString &);
說明:切換到捷運站資訊畫面的 Slot 參數說明:
const QString & 捷運站的名字 const QString & 捷運站的 ID void toAir2_slot();
說明:切換到航班查詢結果的 Slot void toColor_blue_slot();
說明:切換視窗顏色為藍色的 Slot void toColor_yellow_slot();
說明:切換視窗顏色為黃色的 Slot void toColor_green_slot();
說明:切換視窗顏色為綠色的 Slot void toColor_pink_slot();
說明:切換視窗顏色為粉紅色的 Slot void toColor_purple_slot();
說明:切換視窗顏色為紫色的 Slot void toColor_gray_slot();
說明:切換視窗顏色為灰色的 Slot void clearCaption();
說明:清除視窗標題的 Slot
void toreload();
說明:重新更新整個視窗的 Slot void ChangeLang();
說明:語言切換的 Signal void reload_singal();
說明:重新更新整個視窗的 Signal DBAccess *dbacc;
說明:用來存取 DBAccess QFile *file;
說明:用來讀取系統中 information 的檔案 QDateTime *datetime;
說明:用來存取系統時間 QString date
說明:用來存放時間 QString caption
說明:用來存放視窗標題 QString win_no
說明:用來存放上一次開啟視窗的編號 int metro_mid
說明:Menu 上捷運模組的編號 int bus_mid
說明:Menu 上公車模組的編號 int air_mid
說明:Menu 上航空系統的編號 int update_mid
說明:Menu 上更新模組的編號 int h2use_mid
說明:Menu 上說明系統的編號
int sch_mid;
說明:Menu 上排程模組的編號 int blue_mid
說明:Menu 上切換顏色系統中藍色的編號 int green_mid
說明:Menu 上切換顏色系統中綠色的編號 int yellow_mid
說明:Menu 上切換顏色系統中黃色的編號 int pink_mid
說明:Menu 上切換顏色系統中粉紅色的編號 int purple_mid
說明:Menu 上切換顏色系統中紫色的編號 int grey_mid
說明:Menu 上切換顏色系統中灰色的編號 int chinese_mid
說明:Menu 上切換語言系統中中文的編號 int english_mid;
說明:Menu 上切換語言系統中英文的編號 MetroWin *mrtWin
說明:用來初始化捷運模組視窗 Bus *bus;
說明:用來初始化公車模組視窗 Airport *airport;
說明:用來初始化航班模組視窗 NetIP *nip;
說明:用來初始化更新模組視窗 Sch *sch;
說明:用來初始化排程模組視窗
Help *help;
說明:用來初始化說明系統視窗 File setf;
說明:用來記錄系統所要記錄的訊息 QTranslator *trans;
說明:用來轉換編碼 QPopupMenu *colorMenu;
說明:用來初始化切換顏色選單 LabelID:
LabelID(QWidget *parent, const char *name);
說明:建構子 參數說明:
QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input)
LabelID(const QString &text, const QString &id, QWidget *parent, const char *name);
說明:建構子 參數說明:
const QString &text:指定此 Label 上的文字(input) const QString &id: 指定此文字的 ID(input)
QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input) QString getID();
說明:用來抓取 ID 的函式,回傳一個 QString void setTextID(const QString &, const QString &);
說明:用來設定 Label 性質的 Slot QString Text;
說明:用來存放 Label 的文字 QString ID;
說明:用來存放 Label 的 ID
MetroMap:
MetroMap(QWidget *parent, const char *name, DBAccess *dba);
說明:建構子 參數說明:
DBAccess *dba: 指定資料庫(input) QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input)
~MetroMap();
說明:解構子 void move();
說明:用來控制移動的函式 void Change_map();
說明:用來切換地圖的 Slot
void Sel_signal(const QString &, const QString &);
說明:點選地圖則發出此 Signal void reload_signal();
說明:發出重畫視窗的 Signal void paintEvent(QPaintEvent *);
說明:畫面的事件函式
void mousePressEvent(QMouseEvent *);
說明:滑鼠按鍵按壓事件函式
void mouseReleaseEvent(QMouseEvent *);
說明:滑鼠按鍵釋放事件函式
說明:左上角 x 軸位置 int top_y
說明:左上角 y 軸位置 int bottom_x
說明:右下角 x 軸位置 int bottom_y;
說明:右下角 y 軸位置 QString name
說明:存放選到的捷運站明 QString id
說明:存放選到的捷運站編號 QList<TextIni> list
說明:存放查詢出來的捷運站 QPixmap *m_map;
說明:存放捷運地圖 DBAccess *dbacc;
說明:用來存取 DBAccess MetroWin:
MetroWin(QWidget *parent, const char *name, DBAccess *dba);
說明:建構子 參數說明:
DBAccess *dba: 指定資料庫(input) QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input)
~MetroWin();
說明:解構子 LabelID *l_start
說明:顯示起點站名的 Label
LabelID *l_end;
說明:顯示終點站名的 Label
void set_slot(const QString &, const QString &);
說明:選到捷運站的 Slot 參數說明:
const QString &: 捷運站的 name const QString &: 捷運站的 id void priceQ_slot();
說明:票價查詢的 Slot void to_Station_slo t(bool);
說明:判斷是否為資訊查詢的 Slot 參數說明:
bool: 是否為資訊查詢的布林值
void toMetro2_slot(const QString &, const QString &);
說明:切換至捷運站資訊的 Slot 參數說明:
const QString &: 捷運站的 name const QString &: 捷運站的 id void toZoom();
說明:切換地圖大小的 Slot void setLang();
說明:切換語言的 Slot
void toMetro2_signal(const QString &, const QString &);
說明:切換至捷運站資訊的 Signal 參數說明:
const QString &: 捷運站的 name const QString &: 捷運站的 id void ChangeSize();
說明:切換地圖大小的 Signal void ChangeLang();
說明:切換語言的 Signal
void reload_signal();
說明:重新更新整個視窗的 Signal DBAccess *dbacc;
說明:用來存取 DBAccess MetroMap *metromap;
說明:用來初始化捷運地圖 QPixmap *pic_zoom
說明:用來顯示放大縮小的圖示 QPixmap *pic_info
說明:用來顯示資訊查詢的圖示 QPushButton *zoom
說明:切換大小的按鈕 QPushButton *to_Station;
說明:切換資訊查詢的按鈕 QLabel *lab_start
說明:顯示 start 的 Label QLabel *lab_end;
說明:顯示 end 的 Label MetroDialog:
MetroDialog(QWidget *parent, const char *name, const QString
&start_name, const QString &end_name, int money, const QString
&start_id, const QString &end_id);
說明:建構子 參數說明:
QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input) const QString &start_name:起站的名字(input) const QString &end_name: 終站的名字(input) int money: 票價(input) const QString &start_id 起站的 id(input)
const QString &end_id 終站的 id(input)
~MetroDialog() 說明:解構子 QString s_name
說明:用來存放起站名字 QString e_name
說明:用來存放終站名字 QString s_id
說明:用來存放起站 id QString e_id
說明:用來存放終站 id QLabel *l_start
說明:用來顯示 start 的 Label QLabel *l_end
說明:用來顯示 end 的 Label QLabel *l_price
說明:用來顯示 pricet 的 Label QLabel *l_path
說明:用來顯示 path 的 Label QLabel *s_start
說明:用來顯示起點捷運站名 QLabel *s_end
說明:用來顯示終點捷運站名 QLabel *s_price
說明:用來顯示捷運票價 QListBox *metro_path 說明:用來顯示捷運路徑 FloorMap:
FloorMap(QWidget *parent, const char *name, const QString &ID, const QString floor, DBAccess *dba);
說明:建構子 參數說明:
DBAccess *dba: 指定資料庫(input) QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input) const QString &ID: 捷運站 ID(input) const QString floor:捷運站樓層(input) void move();
說明:用來控制地圖移動的函式 void Chang_map(const QString &);
說明:切換樓程地圖的 Slot 參數說明:
const QString &: 樓層編號 void type_slot(int)
說明:選擇標示地點的 Slot 參數說明:
int: 類型編號 void reload_signal()
說明:更新畫面的 Signal void Disable_combox_signal() 說明:關掉類型選單的 Signal void paintEvent(QPaintEvent *);
說明:畫面的事件函式
void mousePressEvent(QMouseEvent *);
說明:滑鼠按鍵按壓事件函式
void mouseReleaseEvent(QMouseEvent *);
說明:滑鼠按鍵釋放事件函式
void mouseDoubleClickEvent(QMouseEvent *)
說明:滑鼠按鍵雙擊事件函式 QString path
說明:用來存放圖片存放的路徑 QString map_first_id
說明:用來存放圖片編號的前兩碼 QString pic_path
說明:用來存放完整的圖片路徑 QString mrt_id
說明:用來存放捷運站 id QString floor_id
說明:用來存放樓層 id QString *ptr
說明:用來暫存 list 的內容
QString F:用來接收傳入的樓層 id QPixmap *pic
說明:用來存放樓層圖片 QPixmap *item;
說明:用來存放標示圖示 QList<QString> x_list
說明:用來存放圖示的 x 軸座標 QList<QString> y_list
說明:用來存放圖示的 y 軸座標
說明:用來存放滑鼠按鍵釋放之 x 座標 DBAccess *dbacc
說明:用來存取 DBAccess FloorPlan:
FloorPlan(QWidget *parent, const char *name, DBAccess *dba, const QString &ID);
說明:建構子 參數說明:
DBAccess *dba: 指定資料庫(input) QWidget *parent: 指定上層的 Widget(input)
const char *name: 此類別的名字(input) const QString &ID: 捷運站 ID(input) void up_slot()
說明:往上切換地圖之 Slot void down_slot()
說明:往下切換地圖之 Slot void Disable_combox_slot() 說明:關掉類型選單的 Slot void chmap(const QString) 說明:更換地圖之 Signal void reload_signal()
說明:更新視窗之 Signal QString Id
說明:用來存放捷運站 id QString floor
說明:用來存放樓層數 DBAccess *dbacc
說明:用來存取 DBAccess QPixmap *p_up
說明:用來顯示向上圖示 QPixmap *p_down
說明:用來顯示向下圖示 QPushButton *up
說明:為向上切換的按鈕 QPushButton *down;
說明:為向下切換的按鈕 QLabel *l_type;
說明:用來顯示 Type 的 abel
QComboBox *c_type
說明:用來列出可選擇地點的下拉式選單 FloorMap *pic
說明:用來顯示樓層地圖 BusLine:
BusLine(QWidget *parent, const char *name, DBAccess *dba, const QString &ID);
說明:建構子 參數說明:
DBAccess *dba: 指定資料庫(input) QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input) const QString &ID: 捷運站的 ID(input)
~BusLine() 說明:解構子 void insertLine()
說明:將路線加入下拉式選單的函式 int split(QString &str, QList<QString> &list) 說明:用來拆開公車路徑的函式
void choose_line(int) 說明:選擇路線的 Slot QString *bus_id
說明:用來存放公車路線的 ID QString bus_path
說明:用來存放公車路徑 QString metro_id
說明:用來存放捷運 ID DBAccess *dbacc
說明:用來存取 DBAccess QList<QString> id_list
說明:用來存放同顏色的公車路線 id QList<QString> text_list
說明:用來存放同顏色的公車路線名稱 QList<QString> bus_station_list
說明:用來存放公車路徑上的站 QComboBox *c_line;
說明:選擇路線的下拉式選單 QListBox *station_listbox
說明:用來顯示路徑 SpotsPic:
SpotsPic(QWidget *parent, const char *name, const QString &p_path) 說明:建構子
參數說明:
QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input) const p_path: 景點圖片的路徑(input) void change_spot_slot(const QString &)
說明:切換景點的 Slot
void paintEvent(QPaintEvent *) 說明:畫面的事件函式
QPixmap *pic
說明:用來存放景點圖片 ScenicSpots:
ScenicSpots(QWidget *parent, const char *name, DBAccess *dba, const QString &ID)
說明:建構子 參數說明:
QWidget *parent: 指定上層的 Widget(input) const char *name: 此類別的名字(input) DBAccess *dba: 指定資料庫(input) const QString &ID: 捷運站 ID(input)
~ScenicSpots() 說明:解構子 void choose(int)
說明:選擇下拉式選單上景點的 Slot 參數說明:
int: 選單上的編號 void change_spot_signal(const QString &) 說明:切換景點圖片的 Signal
參數說明:
const QString &: 景點圖片的路徑 QString *s_id
說明:景點圖片編號 QString pic_path
說明:景點圖片的路徑 QString intro
說明:用來存放景點說明 DBAccess *dbacc
說明:用來存取 DBAccess QString Id
說明:用來存放捷運站 ID QList<QString> text_list
說明:用來存放景點名稱的 list QList<QString> id_list
說明:用來存放景點名稱的 list QList<QString> id_list