现在的位置: 首页 > 综合 > 正文

ucGUI显示文本

2012年12月28日 ⁄ 综合 ⁄ 共 3144字 ⁄ 字号 评论关闭

关于文本的显示比较的简单些,分几个部分进行说明:

(一)文本显示函数

GUI_DispChar()                            //用于显示一个字符

GUI_DispChars();                         //用于重复的显示相同的字符

GUI_DispCharAt()                        //用于在指定的位置显示一个字符

GUI_DispStringAt()                      //用于在指定的位置显示一串字符

GUI_DispStringHCenterAt()         //以函数中设置的X坐标作为自己要显

                          //示文本的水平中心

       一般常用的有这几个函数,别的函数我还没有怎么用过。要说明的就是最后一个函数,显示的函数是以自己设置的X值作为整个字符串的中心位置下面附上一个简单的例子

 GUI_SetBkColor(GUI_BLUE);                                       //设置字体颜色

 GUI_SetColor(GUI_LIGHTRED);                                 //设置字体颜色

 GUI_Clear();                                                                //清屏

 GUI_SetFont(&GUI_Font13B_ASCII);                          //设置字体大小

GUI_GotoXY(0,0);                                                        //设置位置

GUI_DispChar('A');                                                    //显示一个字符

GUI_DispCharAt('B',8,0);                                         //指定的一个地点显示一个GUI_GotoX(16);                                                        //设置X的位置,Y不变

GUI_DispChars('C',4);                                               //重复的显示一个字符4次

(二)文本书写样式

GUI_SetTextStyle();

有四种的参数设置形式

GUI_TS_NORMAL     这个是默认的,不设置的话一般就用这种模式

GUI_TS_UNDERLINE  在显示的字符串下面加个划线

GUI_TS_STRIKETHRU下划线从显示的字符串正中间穿过

GUI_TS_OVERLINE    在显示的字符串上面加个线

附一个例子进行说明

GUI_SetTextStyle(GUI_TS_STRIKETHRU);                                    

GUI_DispStringAt("Hello",0,y=20);                                                     

GUI_SetTextStyle(GUI_TS_UNDERLINE);                                        

GUI_DispStringAt("Hello",100,y=20);

GUI_SetTextStyle(GUI_TS_OVERLINE);                                           

GUI_DispStringAt("Hello",200,y=20);

(三)文本的对齐方式

这个在书写的时候出了不少的问题,需要进行说明下

GUI_SetTextAlign() 

先说水平方向上的

GUI_TA_LEFT        这个是默认的,比如自己设置的X=0则是在X=0的右边显示

GUI_TA_HCENTER   比如自己设置的是X=100,则显示的文本以X=100为中心

GUI_TA_RIGHT      自己设置的是X=100,则显示的文本就在X=100的左边,

再说垂直方向上的

GUI_TA_TOP        这个事默认的,比如Y=0,则显示的文本都在Y=0以下

GUI_TA_VCENTER  比如设置Y=100,则显示的文本在垂直方向上以100为中心

GUI_TA_BOTTOM   比如设置Y=100, 则显示的文本在Y=100以上

只要自己在显示文本的对其方式式注意点就可以了,这个例子很能说明问题

GUI_SetTextAlign(GUI_TA_RIGHT);                                               

GUI_DispStringAt("Hello world",200,0);

GUI_SetTextAlign(GUI_TA_LEFT);                                    

GUI_DispStringAt("Hello world",200,0);

GUI_SetTextAlign(GUI_TA_LEFT|GUI_TA_BOTTOM);              

GUI_DispStringAt("Hello world",0,35);

GUI_SetTextAlign(GUI_TA_HCENTER | GUI_TA_VCENTER);        

GUI_DispStringAt("Hello world",400,5);

(四)文本的模式

关于文本的模式ucGUI的说明书里有一个很详细的说明例程,这里就这直接的贴上了

GUI_SetFont(&GUI_Font8x16);

GUI_SetFont(&GUI_Font8x16);

GUI_SetBkColor(GUI_BLUE);

GUI_Clear();

GUI_SetPenSize(10);

GUI_SetColor(GUI_RED);

GUI_DrawLine(80, 10, 240, 90);//来  :ST_M_8.C_N

GUI_DrawLine(80, 90, 240, 10);

GUI_SetBkColor(GUI_BLACK);

GUI_SetColor(GUI_WHITE);

GUI_SetTextMode(GUI_TM_NORMAL);

GUI_DispStringHCenterAt("GUI_TM_NORMAL" , 160, 10);

GUI_SetTextMode(GUI_TM_REV);

GUI_DispStringHCenterAt("GUI_TM_REV" , 160, 26);

GUI_SetTextMode(GUI_TM_TRANS);

GUI_DispStringHCenterAt("GUI_TM_TRANS" , 160, 42);

GUI_SetTextMode(GUI_TM_XOR);

GUI_DispStringHCenterAt("GUI_TM_XOR" , 160, 58);

GUI_SetTextMode(GUI_TM_TRANS | GUI_TM_REV);

GUI_DispStringHCenterAt("GUI_TM_TRANS | GUI_TM_REV", 160, 74);

 

抱歉!评论已关闭.