A
Alucard
Unregistered / Unconfirmed
GUEST, unregistred user!
程序中我新建了一个Canvas,然后创建HDC赋给Canvas.Handle,然后调用Canvas的方法来绘图。
绘图完成后用CopyRect方法将结果拷贝到界面上,结果是黑白的。
如果我直接在界面的Canvas上画,或者创建一个TBitmap然后在这个Bitmap中画就没问题。
我查了半天资料貌似是GDI调色板的问题,弄得我晕死了,难道还要自己创建调色板然后一个颜色一个颜色的赋值吗?
还有一个问题,如果我要绘制的画布所在的窗体第一次绘制时不是最大化,那当该窗体最大化时,虽然绘制代码是根据画布大小控制的(画布控件的Align属性为Client),但是还是不能完全显示,请问怎么解决?
这两个问题各占一半分数。
CSDN(100分): http://topic.csdn.net/u/20080507/15/4401c17d-1331-4665-93f7-6cd10bab0b9e.html
绘图完成后用CopyRect方法将结果拷贝到界面上,结果是黑白的。
如果我直接在界面的Canvas上画,或者创建一个TBitmap然后在这个Bitmap中画就没问题。
我查了半天资料貌似是GDI调色板的问题,弄得我晕死了,难道还要自己创建调色板然后一个颜色一个颜色的赋值吗?
还有一个问题,如果我要绘制的画布所在的窗体第一次绘制时不是最大化,那当该窗体最大化时,虽然绘制代码是根据画布大小控制的(画布控件的Align属性为Client),但是还是不能完全显示,请问怎么解决?
这两个问题各占一半分数。
CSDN(100分): http://topic.csdn.net/u/20080507/15/4401c17d-1331-4665-93f7-6cd10bab0b9e.html