neilxiang 发表于 2010-2-25 16:29:52

请教: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的边框显示出来了,但是没有显示文字!
其它的控件标题显示是正确的,汉字显示也对了。

ffxz 发表于 2010-2-25 17:01:54

me: ffxz not ffxx

好像你上次不是显示出来过么,这次就显示不出来了?一般边框能够显示,那么文字也应该能够显示的。或者你跟踪到内部调试下,看看绘图的时候textbox的text是否有字符串。

neilxiang 发表于 2010-2-25 22:12:22

回复【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]
查看完整版本: 请教:RT-GUI 其它控件的标题(标题,不知这个称呼对不对,VC中的名字)显示正确,但是textbox控