⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 system.c

📁 用GTK+做用户界面 股票每日分时行情用数据库管理——MYSQL 软件应用方式客户端/服务器模式 基于TCP/IP的C/S通信模式 实现STOCK
💻 C
📖 第 1 页 / 共 2 页
字号:
#include "gmclient.h"#include "stocksql.h"static GtkWidget *tmpwin;static GdkColor fontcolor;static GtkWidget *tmphost;static GtkWidget *tmpuser;static GtkWidget *tmppassword;static GtkWidget *tmpport;static GtkWidget *tmpsocket;static GtkWidget *tmpzt1;static GtkWidget *tmpzt2;static GtkWidget *tmpzt3;static GtkWidget *tmpzt4;static GtkWidget *tmpzt5;static void createColorSetPage(GtkWidget *frame);static void colorButtonClicked(GtkWidget *w,gpointer data);static void colorChangeButtonOK(GtkWidget * widget,gpointer data);static void colorClickOK(GtkWidget *widget,gpointer data);static void createFontSetPage(GtkWidget *frame);static void fontButtonClicked(GtkWidget *widget, gpointer gdata);static void fontChangeButtonOK(GtkWidget * widget,gpointer data);static void fontClickOK(GtkWidget *widget,gpointer data);static void createDatabaseSetPage(GtkWidget *frame);static void connectDatabaseClickOK(GtkWidget * widget,gpointer data);static void saveDatabaseSetClickOK(GtkWidget * widget,gpointer data);static void createDatabaseInstallPage(GtkWidget *frame);static void checkDatabaseStatus(void);static void databaseInstallClickOK(GtkWidget * widget,gpointer data);void setSystem(){    GtkWidget *tmpvbox;    GtkWidget *tmpnote;    GtkWidget *tmppage1,*tmppage2,*tmppage3,*tmppage4,*tmppage5;        //    if(!frechtblflag) return;    if(readCfg()==FAIL) return;    tmpwin = createWindow("系统设置",480,380,0,0,5,                          GTK_SIGNAL_FUNC(endProgram));        tmpvbox = createBox(tmpwin,VERTICAL,0);        tmpnote=createNotebook(tmpvbox,TOP);    tmppage4=addNotebookNewPage(tmpnote,"数据库设置",NULL);         tmppage5=addNotebookNewPage(tmpnote,"建立数据库",NULL);         tmppage1=addNotebookNewPage(tmpnote,"颜色设置",NULL);         tmppage2=addNotebookNewPage(tmpnote,"字体设置",NULL);         tmppage3=addNotebookNewPage(tmpnote,"参数设置",NULL);           createDatabaseSetPage(tmppage4);    createDatabaseInstallPage(tmppage5);    createColorSetPage(tmppage1);    createFontSetPage(tmppage2);    gtk_grab_add(tmpwin);    return;    }void createColorSetPage(GtkWidget *frame){    GtkWidget *button;
    GdkColor color;    GtkWidget *tmptable;    GtkWidget *tframe;    GtkWidget *i_box2,*i_but;    int mod;         tmptable = createTable(frame,12,4,TRUE);    for(mod=0;ca[mod].color;mod++){     if(mod<11){      tframe=createFrameFromTable(tmptable,NULL,                          0,1,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN);      createLabel(tframe,ca[mod].colorlabel);       tframe=createFrameFromTable(tmptable,NULL,                          1,2,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN);      color.red=ca[mod].color->red; 
      color.blue=ca[mod].color->blue; 
      color.green=ca[mod].color->green; 
      button=createStyleButton(tframe,"改变颜色",color,NULL);      gtk_signal_connect (GTK_OBJECT (button), "clicked", 
                  GTK_SIGNAL_FUNC (colorButtonClicked),                  (gpointer)ca[mod].color);
     }     else{      tframe=createFrameFromTable(tmptable,NULL,                        2,3,mod-11,mod-10,0,0,GTK_SHADOW_ETCHED_IN);      createLabel(tframe,ca[mod].colorlabel);       tframe=createFrameFromTable(tmptable,NULL,                        3,4,mod-11,mod-10,0,0,GTK_SHADOW_ETCHED_IN);      color.red=ca[mod].color->red; 
      color.blue=ca[mod].color->blue; 
      color.green=ca[mod].color->green; 
      button=createStyleButton(tframe,"改变颜色",color,NULL);      gtk_signal_connect (GTK_OBJECT (button), "clicked", 
                  GTK_SIGNAL_FUNC(colorButtonClicked),                  (gpointer)ca[mod].color);
     }    }    i_box2 = gtk_hbutton_box_new();    gtk_button_box_set_layout(GTK_BUTTON_BOX(i_box2), SPREAD);    gtk_button_box_set_spacing(GTK_BUTTON_BOX(i_box2), 10);    gtk_table_attach(GTK_TABLE(tmptable),i_box2,                      0,4,11,12,                      GTK_EXPAND |GTK_SHRINK,                      GTK_EXPAND |GTK_SHRINK,                      0,0);   gtk_widget_show(i_box2);   i_but = gtk_button_new_with_label("确  定");   gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked",    GTK_SIGNAL_FUNC(colorClickOK),GTK_OBJECT(tmpwin));   gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0);   gtk_widget_show(i_but);   i_but = gtk_button_new_with_label("应  用");   gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked",    GTK_SIGNAL_FUNC(colorChangeButtonOK),GTK_OBJECT(tmpwin));   gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0);   gtk_widget_show(i_but);   i_but = gtk_button_new_with_label("取  消");   gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked",    GTK_SIGNAL_FUNC(endProgram),GTK_OBJECT(tmpwin));   gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0);   gtk_widget_show(i_but);}void colorButtonClicked(GtkWidget *widget,gpointer data){    GtkStyle *style;
    GdkColor color;

   GdkColor *c;     c=(GdkColor *)data;    /* --- Call the color dialog to get a color --- */
    getDialogColor (&color);

//    printf("color: %X %X %X",color.red,color.blue,color.green);    /* --- Create a style based on the color --- */
    style = newStyle (color,NULL);

    /* --- Set the style of the wiget based on that new style */
    setStyleRecursively (widget, (gpointer) style);
    c->pixel=color.pixel;    c->red=color.red;    c->green=color.green;    c->blue=color.blue;    return;}void colorChangeButtonOK(GtkWidget * widget,gpointer data){  changeAllPenColor();  Repaint();  writeCfg(); }void colorClickOK(GtkWidget *widget,gpointer data){  changeAllPenColor();  Repaint();  writeCfg();  gtk_widget_destroy(widget);  }void createFontSetPage(GtkWidget *frame){    GtkWidget *button;
    GtkWidget *tmptable;    GtkWidget *tframe;    GtkWidget *i_box2,*i_but;    int mod;         tmptable = createTable(frame,4,2,TRUE);    for(mod=0;fa[mod].font;mod++){      tframe=createFrameFromTable(tmptable,NULL,                          0,1,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN);      createLabel(tframe,fa[mod].fontlabel);       tframe=createFrameFromTable(tmptable,NULL,                          1,2,mod,mod+1,0,0,GTK_SHADOW_ETCHED_IN);      fontcolor.red=0xffff; 
      fontcolor.blue=0xffff; 
      fontcolor.green=0xffff; 
      button=createStyleButton(tframe,"  改变字体 ",                      fontcolor,NULL);      gtk_signal_connect (GTK_OBJECT (button), "clicked", 
                  GTK_SIGNAL_FUNC (fontButtonClicked),                  (gpointer)fa[mod].font);
    }    i_box2 = gtk_hbutton_box_new();    gtk_button_box_set_layout(GTK_BUTTON_BOX(i_box2), SPREAD);    gtk_button_box_set_spacing(GTK_BUTTON_BOX(i_box2), 10);    gtk_table_attach(GTK_TABLE(tmptable),i_box2,                      0,2,3,4,                      GTK_EXPAND |GTK_SHRINK,                      GTK_EXPAND |GTK_SHRINK,                      0,0);   gtk_widget_show(i_box2);   i_but = gtk_button_new_with_label("确  定");   gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked",    GTK_SIGNAL_FUNC(fontClickOK),GTK_OBJECT(tmpwin));   gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0);   gtk_widget_show(i_but);   i_but = gtk_button_new_with_label("应  用");   gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked",    GTK_SIGNAL_FUNC(fontChangeButtonOK),GTK_OBJECT(tmpwin));   gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0);   gtk_widget_show(i_but);   i_but = gtk_button_new_with_label("取  消");   gtk_signal_connect_object(GTK_OBJECT(i_but), "clicked",    GTK_SIGNAL_FUNC(endProgram),GTK_OBJECT(tmpwin));   gtk_box_pack_start(GTK_BOX(i_box2), i_but, TRUE, TRUE, 0);   gtk_widget_show(i_but);}void fontButtonClicked(GtkWidget *widget, gpointer gdata){    GtkStyle *style;
    char *f;    char *szFont;
    GdkFont *font;

    /* --- Call the font dialog to get a font --- */
    szFont = GetFont ();

//    printf ("GetFont=%s\n", szFont);
    if(!szFont) return;    f=(char *)gdata;    font = gdk_font_load (szFont);
    strcpy(f,szFont);    g_free (szFont);
//    printf ("fa font=%s\n", fa[0].font);

    /* --- Create a style based on the font --- */
    style = newStyle (fontcolor,font);

    /* --- Set the style of the wiget based on that new style */
    setStyleRecursively (widget, (gpointer) style);
     }void fontChangeButtonOK(GtkWidget * widget,gpointer data){  changeAllFont();  Repaint();  writeCfg(); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -