|
游标闪烁是指的如下所示情景:
===========================================================
原因:
出现控件edit,multedit或者spinbox控件游标不闪烁的原因是因为底层驱动有个地方写的不完善所致。
解决办法如下:
第一步:打开V5开发板任意的emWin工程,如下图所示的位置:
第二步:修改这个函数为如下内容:
static void _FillRect(GUI_DEVICE * pDevice, int x0, int y0, int x1, int y1) {
LCD_PIXELINDEX ColorIndex;
int x;
if (GUI_pContext->DrawMode & LCD_DRAWMODE_XOR)
{
for (y = y0; y <= y1; y++)
{
for (x = x0; x <= x1; x++)
{
_XorPixel(pDevice, x, y);
}
}
}
else
{
/* 选择进行优化 */
#if emWin_Optimize
ColorIndex = LCD__GetColorIndex();
if (g_ChipID == IC_8875)
{
RA8875_RTERect( x0, y0, x1, y1, ColorIndex);
}
else
{
ILI9488_FillRect(x0, y0, y1-y0+1, x1-x0+1, ColorIndex);
}
#else
for (; y0 <= y1; y0++)
{
_DrawHLine(pDevice, x0, y0, x1);
}
#endif
}
}
==============================================================
修改后即可解决游标不闪烁的问题。
另外就是游标闪烁有专门的设置函数,比如edit控件的是:EDIT_EnableBlink |
|