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

📄 mytabs.cxx

📁 一个TAB页
💻 CXX
字号:
// generated by Fast Light User Interface Designer (fluid) version 1.0011#include "mytabs.h"int Tabs_group_num[Tabs_N+1]={0,1,5,9};//0 is good to array,1--->first group,5--->second groupint Tabs_group_widget_num[Tabs_N+1]={0,4,3,3};//int widget_seq[Widget_N+1]={0,1,2,13,3,4,5,6,7,8,9,10,11,12};//need you to fill in,sequence of widgest in Tabs,0--->Tabs,1---->first group,......int relation_widgest[Re_Group+1][Max_Re_G+1];int group_i=Tabs_group_num[Tabs_N];//last group showint widget_i=group_i;int Radio_Group[3]={2,2,13};int Check_Group[2]={1,3};int Input_Group[3]={2,4,7};Fl_Tabs_input* Widgest_in_Tab[Widget_N];//int widgest_type(int widget_ii){		if(search_pos(Radio_Group,widget_ii,3))		return Radio;	if(search_pos(Check_Group,widget_ii,2))		return Check;	if(search_pos(Input_Group,widget_ii,3))		return Input;		}//void Fl_Tabs_input::input_key(char c){				int i=search_pos(Tabs_group_num,group_i,Tabs_N+1);//	int j=search_pos(widget_seq,group_i,Widget_N+1);//position of group_i in widget_seq array	int k=Tabs_group_widget_num[i];	static char* input_string;switch(c){	case 'P':{				Widgest_in_Tab[group_i]->widget->hide();		Widgest_in_Tab[widget_i]->widget->labelcolor(UNOVER_COLOR);//		int m;		if(i==Tabs_N)m=1;		else m++;		group_i=Tabs_group_num[m];		widget_i=group_i;//		Widgest_in_Tab[group_i]->widget->show();		int jj=search_pos(widget_seq,group_i,Widget_N+1);		int ii=search_pos(Tabs_group_num,group_i,Tabs_N+1);		int k=Tabs_group_widget_num[ii];		if(k>=1){						widget_i=widget_seq[jj+1];			Widgest_in_Tab[widget_i]->widget->labelcolor(OVER_COLOR);		}			break;}		case 'D':{				if(k<2){}//'D' is disable		else 		{if(widget_i==group_i){						widget_i=widget_seq[j+1];			Widgest_in_Tab[widget_i]->widget->labelcolor(UNOVER_COLOR);			widget_i=widget_seq[j+2];			Widgest_in_Tab[widget_i]->widget->labelcolor(OVER_COLOR);			}		  else{		  			  			  	if(widget_i==widget_seq[j+k]){//last widget in that page		  		Widgest_in_Tab[widget_i]->widget->labelcolor(UNOVER_COLOR);		  		widget_i=widget_seq[j+1];		  		Widgest_in_Tab[widget_i]->widget->labelcolor(OVER_COLOR);		  						}			else			{		  	Widgest_in_Tab[widget_i]->widget->labelcolor(UNOVER_COLOR);		  	int n=search_pos(widget_seq,widget_i,Widget_N+1);		  	widget_i=widget_seq[n+1];		  	Widgest_in_Tab[widget_i]->widget->labelcolor(OVER_COLOR);			}		  }				}		break;}				case 'U':{						if(k<2){}//'U' is disable		else 		{if(widget_i==group_i){						widget_i=widget_seq[j+1];			Widgest_in_Tab[widget_i]->widget->labelcolor(UNOVER_COLOR);					  	widget_i=widget_seq[j+k];		  	Widgest_in_Tab[widget_i]->widget->labelcolor(OVER_COLOR);			}		  else{		  			  	if(widget_i==widget_seq[j+1]){//first widget in that page		  		Widgest_in_Tab[widget_i]->widget->labelcolor(UNOVER_COLOR);					  		widget_i=widget_seq[j+k];		  		Widgest_in_Tab[widget_i]->widget->labelcolor(OVER_COLOR);			}			else			{		  	Widgest_in_Tab[widget_i]->widget->labelcolor(UNOVER_COLOR);		  			  	int n=search_pos(widget_seq,widget_i,Widget_N+1);		  	widget_i=widget_seq[n-1];		  	Widgest_in_Tab[widget_i]->widget->labelcolor(OVER_COLOR);			}		  }				}		break;}		case ' ':{		if(k<1){}//' ' is disable		else 		{if(widget_i==group_i){			widget_i=widget_seq[j+1];			}		 if(widgest_type(widget_i)==Radio){		  	((Fl_Round_Button*)(Widgest_in_Tab[widget_i]->widget))->value(1);		  	int gr=0;		  	//other radios related with it should be value(0) 		  	for(int i;i<Re_Group+1;i++)		  		for(int j=1;j<=relation_widgest[i][0];j++)		  			if(widget_i==relation_widgest[i][j])gr=i;		  	if(gr!=0){		  		for(int j=1;j<=relation_widgest[gr][0];j++)		  			if(widget_i!=relation_widgest[gr][j])		  				((Fl_Round_Button*)(Widgest_in_Tab[relation_widgest[gr][j]]->widget))->value(0);			}		  			  			 } 			 if(widgest_type(widget_i)==Check){		 	int check_value=((Fl_Check_Button*)(Widgest_in_Tab[widget_i]->widget))->value();		 	check_value=check_value^1;//1--0,0---1		  	((Fl_Check_Button*)(Widgest_in_Tab[widget_i]->widget))->value(check_value);		  			  			 } 		 if(widgest_type(widget_i)==Input){		 	input_string=str_cat(input_string,' ');//////		  	((Fl_Input*)(Widgest_in_Tab[widget_i]->widget))->value(input_string);		  			  			 } 			 		 		  			}		  						break;}		default:{		if(widget_i==group_i){			widget_i=widget_seq[j+1];		}		if(widgest_type(widget_i)==Input){		input_string=str_cat(input_string,c);/////		((Fl_Input*)(Widgest_in_Tab[widget_i]->widget))->value(input_string);						}		break;	}						}	}void calltime(void *){	char c=getchar();	if(c=='O'){	printf("do OK\n");	return;	}	if(c=='C'){	printf("do CAncel\n");	return;	}	if(c=='A'){	printf("do Apply\n");	return;	}	if(c=='H'){	printf("do Help\n");	return;	}	Widgest_in_Tab[widget_i]->input_key(c);	}Fl_Window *foo_window=(Fl_Window *)0;static void cb_cancel(Fl_Button*, void*) {  exit(1);}static void cb_OK(Fl_Return_Button*, void*) {  exit(0);}int main(int argc, char **argv) {//relation_widgest[1][0]=2;// relation_widgest[1][1]=13;relation_widgest[1][2]=3;relation_widgest[2][0]=3;// relation_widgest[2][1]=10;relation_widgest[2][2]=11;relation_widgest[2][3]=12;  Fl_Window* w;  { Fl_Window* o = foo_window = new Fl_Window(321, 324);    w = o;    { Fl_Tabs* o = new Fl_Tabs(10, 10, 300, 200);      Widgest_in_Tab[0]->widget=o;//      o->selection_color(15);      //      { Fl_Group* o = new Fl_Group(10, 30, 300, 180, "Label1");        Widgest_in_Tab[1]->widget=o;//        o->hide();        {        Fl_Round_Button* o=new Fl_Round_Button(60, 50, 240, 40, "Fl_Round_Button:");        Widgest_in_Tab[2]->widget=o;//        o->labelcolor(OVER_COLOR);	}	{        Fl_Round_Button* o=new Fl_Round_Button(60, 70, 240, 40, "Fl_Round_Button:");        Widgest_in_Tab[13]->widget=o;//        o->labelcolor(OVER_COLOR);	}	{        Fl_Check_Button* o=new Fl_Check_Button(60, 90, 240, 30, "Fl_Check_Button:");        Widgest_in_Tab[3]->widget=o;//	}	{        Fl_Input* o=new Fl_Input(60, 120, 240, 80, "input3:");        Widgest_in_Tab[4]->widget=o;//	}        o->end();        Fl_Group::current()->resizable(o);      }      //      { Fl_Group* o = new Fl_Group(10, 30, 300, 180, "tab2");        Widgest_in_Tab[5]->widget=o;//        o->hide();        {        Fl_Button* o=new Fl_Button(20, 60, 100, 30, "button1");        Widgest_in_Tab[6]->widget=o;//        o->labelcolor(OVER_COLOR);	}	{        Fl_Input* o=new Fl_Input(140, 100, 100, 30, "input in box2");        Widgest_in_Tab[7]->widget=o;//	}	{        Fl_Button* o=new Fl_Button(30, 140, 260, 30, "This is stuff inside the Fl_Group \"tab2\"");        Widgest_in_Tab[8]->widget=o;//	}        o->end();      }      { Fl_Group* o = new Fl_Group(10, 30, 300, 180, "tab3");      	Widgest_in_Tab[9]->widget=o;//	{              Fl_Button* o=new Fl_Button(20, 60, 60, 80, "button2");        Widgest_in_Tab[10]->widget=o;//        o->labelcolor(OVER_COLOR);	}	{        Fl_Button* o=new Fl_Button(80, 60, 60, 80, "button");        Widgest_in_Tab[11]->widget=o;//	}	{        Fl_Button* o=new Fl_Button(140, 60, 60, 80, "button");        Widgest_in_Tab[12]->widget=o;//	}        o->end();      }      /*      { Fl_Group* o = new Fl_Group(10, 30, 300, 180, "tab4");        o->labelfont(2);        o->hide();        new Fl_Button(20, 50, 60, 110, "button2");        new Fl_Button(80, 50, 60, 110, "button");        new Fl_Button(140, 50, 60, 110, "button");        o->end();      }      { Fl_Group* o = new Fl_Group(10, 30, 300, 180, "     tab5      ");        o->labeltype(FL_ENGRAVED_LABEL);        o->hide();        new Fl_Button(20, 80, 60, 80, "button2");        new Fl_Button(90, 90, 60, 80, "button");        { Fl_Clock* o = new Fl_Clock(160, 50, 100, 100, "Make sure this clock does not use processor time when this tab is hidden or w\indow is iconized");          o->box(FL_OSHADOW_BOX);          o->color(238);          o->selection_color(0);          o->labelfont(8);          o->labelsize(10);          o->align(130);        }        o->end();      }      */      o->end();      Fl_Group::current()->resizable(o);    }    //new Fl_Input(60, 220, 130, 30, "inputA:");    //new Fl_Input(60, 250, 250, 30, "inputB:");    { Fl_Button* o = new Fl_Button(180, 290, 60, 30, "cancel");      o->callback((Fl_Callback*)cb_cancel);    }    { Fl_Return_Button* o = new Fl_Return_Button(250, 290, 60, 30, "OK");      o->callback((Fl_Callback*)cb_OK);    }    o->end();  }  w->show(argc, argv); Fl::add_timeout(0.2,calltime);  return Fl::run();}

⌨️ 快捷键说明

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