有人用过minigui,directfb的吗!
求教,本人现在遇到一个directfb问题。我现在需要通过dfb设置R,G,B然后算出某个值,然后如果需要透明的话就设置某个区域r,g,b三个值对应底层原来这个值,就可以透明,也就是DFB的colorkey这个属性。然后我需要用到调用minigui的函数去设置这三个值。然后使得我需要的区域透明。
我现在首先设置dfb。
DirectFBInit (NULL, NULL) ;
if (DirectFBCreate (&__mg_dfb) != DFB_OK)
goto init_err;
if (__mg_dfb->SetCooperativeLevel (__mg_dfb, DFSCL_FULLSCREEN) != DFB_OK)
goto init_err;
surfaceDesc.flags = DSDESC_CAPS;
surfaceDesc.caps = DSCAPS_PRIMARY | DSCAPS_STATIC_ALLOC;
if (__mg_dfb->CreateSurface (__mg_dfb, &surfaceDesc, &pFrameBuffer) != DFB_OK)
goto init_err;
pFrameBuffer->GetSize( pFrameBuffer, &SW, &SH );
printf("%d,%s,%d.%d\n", __LINE__, __func__,SW,SH);
pFrameBuffer->SetBlittingFlags( pFrameBuffer, DSBLIT_SRC_COLORKEY );
if (pFrameBuffer->SetSrcColorKey( pFrameBuffer, 0x00,0x00,0x00) != DFB_OK);
去设置colorkey去设置可以透明匹配透明的R,G,B。然后我去调用minigui的函数
SetBrushColor (mem_dc, RGBA2Pixel (mem_dc, 0x0,0x00,0x00, 0x80));
FillBox(mem_dc, 0, 0, 400, 400); 想让透明。但是这样实现不了。
请问下有谁用过这样的方法。加急!