在Windows Mobile 6.5中支持雙緩衝功能CE CE認證的產品型號爲雙緩衝
Q
雙緩衝
0
A
回答
1
這確實取決於你的意思和地點。幾乎所有的CE顯示驅動程序使用雙緩衝從顯存繪圖顯示以防止撕裂和文物(我從來沒有見過一個沒有)。
如果你問如果一些框架,如可能Compact Framework的,MFC,直接顯示或什麼的,它支持通過API,那麼我們就需要知道你在說什麼框架。
3
如果您繪製的控制自己,那麼你可能要考慮執行自己的雙緩衝。
我沒有跟上大量最新採用WinCE最近並會認爲他們會最終端口便於雙緩衝你的桌面上,但也許他們沒有的。
基本前提是隻畫到圖像,然後做塊的形象到「真正的」圖形一次拍攝對象。
這是(從內存中,因此IDK的,如果語法是完美的這個)「東西」是這樣的:
public class DoubleBufferedControl : Control
{
protected override OnPaint(object sender, PaintEventArgs e)
{
using(Bitmap bitmap = new Bitmap(Width, Height))
{
using(Graphics graphics = Graphics.FromImage(bitmap))
{
DoPaint(sender, new PaintEventArgs(graphics));
e.Graphics.DrawImage(bitmap, 0, 0);
}
}
}
protected virtual DoPaint(object sender, PaintEventArgs e)
{
/* left empty for overrides */
}
protected override OnPaintBackground(object sender, PaintEventArgs e)
{
/* do nothing */
}
}
然後讓自己所有的控件從這個繼承並添加你的繪圖代碼爲DoPaint的覆蓋。
您可能希望opitmise上述只創建一次位圖(ctor),處理resize事件,然後在resize上重新創建它,然後添加一些配置代碼,以便您可以在對象死亡時對位圖進行配置。
相關問題
- 1. C#雙緩衝?
- 2. Java雙緩衝
- 3. GDI +雙緩衝
- 4. WinAPI雙緩衝
- 5. Android雙緩衝
- 6. VB.NET雙緩衝
- 7. 雙緩衝swt
- 8. Jython雙緩衝
- 9. 畫布:雙緩衝
- 10. 雙緩衝? Win32 C++
- 11. WM_EX_COMPOSITED無雙緩衝
- 12. 的WinForms雙緩衝
- 13. Java - 雙緩衝NullPointerException
- 14. 啓用雙緩衝
- 15. JWindow的雙緩衝
- 16. Silverlight MediaElement雙緩衝
- 17. 雙緩衝和libgdx
- 18. 雙緩衝幫助
- 19. DrawReversibleLine()和雙緩衝
- 20. 在c#雙緩衝
- 21. WPF中的雙緩衝?
- 22. GDI + C++中的雙緩衝
- 23. 雙緩衝VB6 BitBlt幫助
- 24. C++/WinAPI GDI +雙緩衝
- 25. 瞭解雙緩衝區
- 26. C++ win32項目雙緩衝
- 27. C++的Win32 GDI雙緩衝
- 28. Direct2D中的雙緩衝?
- 29. java雙緩衝性能
- 30. Qt的雙緩衝行爲
其Compact Framework的,當我在windows mobile的所有我的控件閃變,我想知道向下滾動,有沒有辦法阻止它提前 –
感謝@ Dev.Windows,你在畫自己這些控件? – Quibblesome
你好,我正在繪製控制自己 –