请教:RT-GUI 其它控件的标题(标题,不知这个称呼对不对,VC中的名字)显示正确,但是textbox控
ffxx:现在又碰到一个新的头题,还要麻烦你。是关于textbox控件使用的问题,我在VS2005中,测试textbox控件的显示是正确的,
但是在下位机的时候,textbox中是示的东西是空的。
textbox=rtgui_textbox_create("textbox");
RTGUI_WIDGET_FOREGROUND(RTGUI_WIDGET(textbox))=red;
rtgui_container_add_child(RTGUI_CONTAINER(main_view),RTGUI_WIDGET(textbox));
rtgui_widget_set_rect(RTGUI_WIDGET(textbox),&rect);
textbox的边框显示出来了,但是没有显示文字!
其它的控件标题显示是正确的,汉字显示也对了。 me: ffxz not ffxx
好像你上次不是显示出来过么,这次就显示不出来了?一般边框能够显示,那么文字也应该能够显示的。或者你跟踪到内部调试下,看看绘图的时候textbox的text是否有字符串。 回复【1楼】ffxz
-----------------------------------------------------------------------
谢谢ffxz,不好意思,以前将你的名字写错了,陪罪,陪罪。
现在发现不是textbox控件不能显示字符,是radio项目中lcd.c驱动有点小问题。以前在绘点的时候,
/*设置像素点 颜色,X,Y */
void rt_hw_lcd_set_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y)
{
unsigned short p;
if ( (x>320)||(y>240) ) return;
/* get color pixel */
p = rtgui_color_to_565p(*c);
ili9325_SetCursor(x,y);
LCD_WriteRAM_Prepare();
LCD_WriteRAM(p);
}
对于X Y的判断反了,aozima也修正了这个问题。
应该是:
/*设置像素点 颜色,X,Y */
void rt_hw_lcd_set_pixel(rtgui_color_t *c, rt_base_t x, rt_base_t y)
{
unsigned short p;
//if ( (x>320)||(y>240) ) return;
if ( (x>240)||(y>320) ) return; //by neilxiang
/* get color pixel */
p = rtgui_color_to_565p(*c);
ili9325_SetCursor(x,y);
LCD_WriteRAM_Prepare();
LCD_WriteRAM(p);
}
页:
[1]