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

📄 page5.h

📁 简单的linux下的用GTK实现的任务管理器软件
💻 H
字号:
void prepareData(){    FILE   *stream;    FILE   *wstream;    char   buf[1024];    memset( buf, '\0', sizeof(buf) );    stream = popen( "df", "r" );    wstream = fopen( "tempfile", "w");    fread( buf, sizeof(char), sizeof(buf),  stream);    fwrite( buf, 1, sizeof(buf), wstream );    pclose( stream );    fclose( wstream );}void getFsInfo(){    FILE* fp1;    char buf7[6][512];    prepareData();    fp1=fopen("tempfile","r");    fsNum=0;    fgets(buf7[0],512,fp1);    while(1)    {        if(fscanf(fp1,"%s",buf7[0])==EOF)        {            break;        }        if(fscanf(fp1,"%s",buf7[1])==EOF)        {            break;        }        if(fscanf(fp1,"%s",buf7[2])==EOF)        {            break;        }        if(fscanf(fp1,"%s",buf7[3])==EOF)        {            break;        }        if(fscanf(fp1,"%s",buf7[4])==EOF)        {            break;        }        if(fscanf(fp1,"%s",buf7[5])==EOF)        {            break;        }        fsNum++;        strcpy(allFs[fsNum-1].name,buf7[0]);        allFs[fsNum-1].ab=(int)(atof(buf7[1])/1024);        allFs[fsNum-1].ub=(int)(atof(buf7[2])/1024);        allFs[fsNum-1].fb=(int)(atof(buf7[3])/1024);        strcpy(allFs[fsNum-1].usage,buf7[4]);        strcpy(allFs[fsNum-1].point,buf7[5]);    }    fclose(fp1);}void updatePage5(){    int i;    static char buf6[6][512];    static int flag3=0;    getFsInfo();    if (flag3)    {        markup1 = g_markup_printf_escaped ("<span font_desc=\"URW Gothic L Bold 20\">In total, %d main filesystem found</span>",fsNum);        gtk_label_set_markup (GTK_LABEL (page5Label), markup1);        g_free (markup1);    }    flag3=1;    gtk_list_store_clear(GTK_LIST_STORE(list_p5));    /* put data into the list */    for (i = 0; i < fsNum; i++)    {        if (allFs[i].name==NULL)        {            sprintf(buf6[0],"N/A   ");        }        else        {            sprintf(buf6[0],"%s   ",allFs[i].name);        }        if (allFs[i].ab==-1)        {            sprintf(buf6[1],"N/A   ");        }        else        {            sprintf(buf6[1],"%d   ",allFs[i].ab);        }        if (allFs[i].ub==-1)        {            sprintf(buf6[2],"N/A   ");        }        else        {            sprintf(buf6[2],"%d   ",allFs[i].ub);        }        if (allFs[i].fb==-1)        {            sprintf(buf6[3],"N/A   ");        }        else        {            sprintf(buf6[3],"%d   ",allFs[i].fb);        }        if (allFs[i].usage==NULL)        {            sprintf(buf6[4],"N/A   ");        }        else        {            sprintf(buf6[4],"%s   ",allFs[i].usage);        }        if (allFs[i].point==NULL)        {            sprintf(buf6[50],"N/A   ");        }        else        {            sprintf(buf6[5],"%s   ",allFs[i].point);        }        gtk_list_store_append(list_p5, &iter_p5);        gtk_list_store_set(list_p5, &iter_p5,                0,buf6[0],                1,buf6[1],                2,buf6[2],                3,buf6[3],                4,buf6[4],                5,buf6[5],                -1);    }}page5Generate(){    /* create a 6−column list */    list_p5 = gtk_list_store_new(6,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING);    updatePage5();    /* create tree view for the list */    view_p5 = g_object_new(GTK_TYPE_TREE_VIEW,            "model", list_p5,            "reorderable", TRUE,            NULL);    gtk_tree_view_set_rules_hint(GTK_TREE_VIEW(view_p5),TRUE);    /* create and initialize text renderer for cells */    text_renderer_p5_1 = gtk_cell_renderer_text_new();    g_object_set(text_renderer_p5_1, "font", "URW Gothic L","weight",1500,NULL);    text_renderer_p5_2 = gtk_cell_renderer_text_new();    g_object_set(text_renderer_p5_2, "font", "URW Gothic L",NULL);    text_renderer_p5_3 = gtk_cell_renderer_text_new();    g_object_set(text_renderer_p5_3, "font", "URW Gothic L",NULL);    text_renderer_p5_4 = gtk_cell_renderer_text_new();    g_object_set(text_renderer_p5_4, "font", "URW Gothic L",NULL);    text_renderer_p5_5 = gtk_cell_renderer_text_new();    g_object_set(text_renderer_p5_5, "font", "URW Gothic L",NULL);    text_renderer_p5_6 = gtk_cell_renderer_text_new();    g_object_set(text_renderer_p5_6, "font", "Purisa",NULL);    /* create column views */    name_column_p5 = gtk_tree_view_column_new_with_attributes("Name",text_renderer_p5_1,"text", 0,NULL);    g_object_set(name_column_p5,            "resizable", TRUE,            "clickable", FALSE,            "reorderable", TRUE,            NULL);    ab_column_p5 = gtk_tree_view_column_new_with_attributes("Size(MB)",text_renderer_p5_2,"text", 1,NULL);    g_object_set(ab_column_p5,            "resizable", TRUE,            "clickable", FALSE,            "reorderable", TRUE,            NULL);    ub_column_p5 = gtk_tree_view_column_new_with_attributes("Used(MB)",text_renderer_p5_3,"text", 2,NULL);    g_object_set(ub_column_p5,            "resizable", TRUE,            "clickable", FALSE,            "reorderable", TRUE,            NULL);    fb_column_p5 = gtk_tree_view_column_new_with_attributes("Free(MB)",text_renderer_p5_4,"text", 3,NULL);    g_object_set(fb_column_p5,            "resizable", TRUE,            "clickable", FALSE,            "reorderable", TRUE,            NULL);    usage_column_p5 = gtk_tree_view_column_new_with_attributes("Used Percentage",text_renderer_p5_5,"text", 4,NULL);    g_object_set(usage_column_p5,            "resizable", TRUE,            "clickable", FALSE,            "reorderable", TRUE,            NULL);    point_column_p5 = gtk_tree_view_column_new_with_attributes("Mount Point",text_renderer_p5_6,"text", 5,NULL);    g_object_set(point_column_p5,            "resizable", TRUE,            "clickable", FALSE,            "reorderable", TRUE,            NULL);    /* insert columns into the view */    gtk_tree_view_append_column(view_p5,name_column_p5);    gtk_tree_view_append_column(view_p5,ab_column_p5);    gtk_tree_view_append_column(view_p5,ub_column_p5);    gtk_tree_view_append_column(view_p5,fb_column_p5);    gtk_tree_view_append_column(view_p5,usage_column_p5);    gtk_tree_view_append_column(view_p5,point_column_p5);    /* put everything into a scrolled window */    scrolled_window_p5 = g_object_new(GTK_TYPE_SCROLLED_WINDOW, NULL);    gtk_container_add(GTK_CONTAINER(scrolled_window_p5), GTK_WIDGET(view_p5));    gtk_table_attach(GTK_TABLE(page_table[4]),GTK_WIDGET(scrolled_window_p5),            0,gridQuanH,            0,gridQuanV/10*9,            GTK_EXPAND|GTK_FILL,GTK_EXPAND|GTK_FILL,            10,10            );    page5Frame=g_object_new(GTK_TYPE_FRAME, "label", "Main Filesystem Overall View", NULL);    gtk_table_attach(GTK_TABLE(page_table[4]),GTK_WIDGET(page5Frame),            0,gridQuanH,            gridQuanV/10*9,gridQuanV,            GTK_EXPAND|GTK_FILL,GTK_EXPAND|GTK_FILL,            10,5            );    sprintf(fsOverallDataBuffer,"In total, %d main filesystem found",fsNum);    page5Label=gtk_label_new(fsOverallDataBuffer);    gtk_label_set_justify(GTK_LABEL(page5Label),GTK_JUSTIFY_CENTER);    markup1 = g_markup_printf_escaped ("<span font_desc=\"URW Palladio Bold 17\">In total, %d main filesystem found.</span>",fsNum);    gtk_label_set_markup (GTK_LABEL (page5Label), markup1);    g_free (markup1);    gtk_table_attach(GTK_TABLE(page_table[4]),GTK_WIDGET(page5Label),            0,gridQuanH,            gridQuanV/10*9,gridQuanV,            GTK_EXPAND|GTK_FILL,GTK_EXPAND|GTK_FILL,            10,0            );}

⌨️ 快捷键说明

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