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

📄 index.c

📁 C语言编写的仿视窗多程序演示系统
💻 C
📖 第 1 页 / 共 3 页
字号:
    free(buffertemp);
    PrintTextxy(xx,yy,str,RED) ;
    for (i=1;i<=260;i++)
    {
        delay(1000);
        sprintf(num,"%d%c",(int)(100*i/259),37);
        setfillstyle(SOLID_FILL,LIGHTGRAY);
        bar(xx+80,yy,xx+110,220);
        setcolor(WHITE);
        outtextxy(xx+80,yy,num);
        setfillstyle(SOLID_FILL,BLUE);
        bar(170,230,170+i,245);
    }
    delay(10000);

}

main()
{

    char c;
    long i;
    FILE *fp;
    void *bufferold,*buffermenu,*bufferbar,*bufferpromenu,*bufferold2,*bufferbarl,*buffertemp,*buffertemp1;
    initgr();
    loadBmp("hello.bmp");

    loop:
    initgr(); /* BGI初始化 */
    MaxX=getmaxx();MaxY=getmaxy();

    clrscr();
   /*
    Draw_mainmenu(0,480-300-45);
    buffermenu=malloc(imagesize(0+1,135+1,170-1,435-1));
    getimage(0+1,135+1,170-1,435-1,buffermenu);
    if ((fp=fopen("menu.dat","wb"))==NULL) return;
    fwrite(buffermenu,imagesize(0+1,135+1,170-1,435-1),1,fp);
    fclose(fp);
    free(buffermenu);

    Draw_promenu(0,0);
    bufferpromenu=malloc(imagesize(0+1,0+1,190-1,255-1));
    getimage(0+1,0+1,190-1,255-1,bufferpromenu);
    if ((fp=fopen("promenu.dat","wb"))==NULL) return;
    fwrite(bufferpromenu,imagesize(0+1,0+1,190-1,255-1),1,fp);
    fclose(fp);
    free(bufferpromenu);

    setfillstyle(SOLID_FILL,YELLOW);
    bar(0,0,140,22);
    bufferbar=malloc(imagesize(0,0,140,22));
    getimage(0,0,140,22,bufferbar);
    if ((fp=fopen("bar.dat","wb"))==NULL) return;
    fwrite(bufferbar,imagesize(0,0,140,22),1,fp);
    fclose(fp);
    free(bufferbar);

    setfillstyle(SOLID_FILL,BLACK);
    bar(0,0,288,245);
    loadbmp(0,288,245,"about.bmp");
    buffertemp=malloc(imagesize(0,0,288,245));
    getimage(0,0,288,245,buffertemp);
    if ((fp=fopen("about.dat","wb"))==NULL) return;
    fwrite(buffertemp,imagesize(0,0,288,245),1,fp);
    fclose(fp);
    free(buffertemp);

    setfillstyle(SOLID_FILL,BLACK);
    bar(0,0,288,245);
    loadbmp(0,288,245,"illu.bmp");
    buffertemp=malloc(imagesize(0,0,288,245));
    getimage(0,0,288,245,buffertemp);
    if ((fp=fopen("illu.dat","wb"))==NULL) return;
    fwrite(buffertemp,imagesize(0,0,288,245),1,fp);
    fclose(fp);
    free(buffertemp);

    setfillstyle(SOLID_FILL,BLACK);
    bar(0,0,289,86);
    loadbmp(0,289,86,"load.bmp");
    buffertemp=malloc(imagesize(0+1,0+1,289-1,86-1-1));
    getimage(0+1,0+1,289-1,86-1-1,buffertemp);
    if ((fp=fopen("load.dat","wb"))==NULL) return;
    fwrite(buffertemp,imagesize(0+1,0+1,289-1,86-1-1),1,fp);
    fclose(fp);
    free(buffertemp);
   */
    setfillstyle(SOLID_FILL,YELLOW);
    bar(0,0,180,22);
    bufferbarl=malloc(imagesize(0,0,180,22));
    getimage(0,0,180,22,bufferbarl);

    setcolor(BLUE);
    Draw_down();
    Draw_go_Up();

    while(1)
    {
        int flag1=0,flag2=0,n=0,n1=6,nold=6;
        char num[4];
        void *bufferoldbar;
        c=Contrkey();
        switch(c)
        {
            case ALT_S:
            case ENTER:
                clrkey();

                if ((fp=fopen("old.dat","wb"))==NULL) return;
                bufferold=malloc(imagesize(0,135,170,435));
                getimage(0,135,170,435,bufferold);
                fwrite(bufferold,imagesize(0,135,170,435),1,fp);
                fclose(fp);

                Draw_go_Down();


                if ((fp=fopen("bar.dat","rb"))==NULL) return;
                bufferbar=malloc(imagesize(0,0,140,22));
                fread(bufferbar,imagesize(0,0,140,22),1,fp);
                fclose(fp);


                if ((fp=fopen("menu.dat","rb"))==NULL) return;
                buffermenu=malloc(imagesize(0,135,170,435));
                fread(buffermenu,imagesize(0,135,170,435),1,fp);
                fclose(fp);
                putimage(0+1,135+1,buffermenu,COPY_PUT);
                free(buffermenu);



                while(1)
                {

                    c=Contrkey();
                    switch(c)
                       {
                            menu1:
                            case ESC:
                                clrkey();
                                Draw_go_Up();
                                if ((fp=fopen("old.dat","rb"))==NULL) return;
                                bufferold=malloc(imagesize(0,135,170,435));
                                fread(bufferold,imagesize(0,135,170,435),1,fp);
                                fclose(fp);
                                putimage(0,135,bufferold,COPY_PUT);
                                free(bufferold);

                            break;
                            case UP:

                                n++;
                                if(n>=6)n=1;
                                if(n==1)
                                {

                                    if (flag1==1)
                                    {
                                        putimage(22,MaxY-75-185,bufferbar,XOR_PUT);
                                        putimage(22,MaxY-75,bufferbar,XOR_PUT);
                                    }
                                     if (flag1==0)
                                    {
                                        putimage(22,MaxY-75,bufferbar,XOR_PUT);
                                        flag1=1;flag2=1;
                                    }
                                }

                                if(n==2)
                                {
                                    putimage(22,MaxY-75,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75-55,bufferbar,XOR_PUT);
                                }
                                if (n==3)
                                {
                                    putimage(22,MaxY-75-55,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75-95,bufferbar,XOR_PUT);
                                }
                                if (n==4)
                                {
                                    putimage(22,MaxY-75-95,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75-140,bufferbar,XOR_PUT);
                                }
                                if (n==5)
                                {
                                    putimage(22,MaxY-75-140,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75-185,bufferbar,XOR_PUT);
                                }

                            continue;
                            case DOWN:
                                n--;
                                if(n<=0)n=5;
                                if(n==5)
                                {

                                    if (flag2==1)
                                    {
                                        putimage(22,MaxY-75-185,bufferbar,XOR_PUT);
                                        putimage(22,MaxY-75,bufferbar,XOR_PUT);
                                    }
                                     if (flag2==0)
                                    {
                                        putimage(22,MaxY-75-185,bufferbar,XOR_PUT);
                                        flag2=1;flag1=1;
                                    }
                                }

                                if(n==4)
                                {
                                    putimage(22,MaxY-75-185,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75-140,bufferbar,XOR_PUT);
                                }
                                if (n==3)
                                {
                                    putimage(22,MaxY-75-140,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75-95,bufferbar,XOR_PUT);
                                }
                                if (n==2)
                                {
                                    putimage(22,MaxY-75-95,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75-55,bufferbar,XOR_PUT);
                                }
                                if (n==1)
                                {

                                    putimage(22,MaxY-75-55,bufferbar,XOR_PUT);
                                    putimage(22,MaxY-75,bufferbar,XOR_PUT);

                                }
                            continue;
                            case RIGHT:
                                if (n==5) goto lable_et;
                            continue;
                            lable_et:
                            case ENTER:
                                n1=6;nold=6;
                                switch(n)
                                {
                                    case 0:
                                    break;
                                    case 1:
                                    loadBmp("byebye.bmp");
                                    return;
                                    case 2:

                                        if ((fp=fopen("backbak.dat","wb"))==NULL) return;
                                        buffertemp1=malloc(imagesize(0,0,288,245));
                                        getimage(0+200,0+150,288+200,245+150,buffertemp1);
                                        fwrite(buffertemp1,imagesize(0,0,288,245),1,fp);
                                        fclose(fp);
                                        free(buffertemp1);

                                        if ((fp=fopen("about.dat","rb"))==NULL) return;
                                        buffertemp=malloc(imagesize(0,0,288,245));
                                        fread(buffertemp,imagesize(0,0,288,245),1,fp);

⌨️ 快捷键说明

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