2008-09-25 62 views
2

只是一個簡單的問題。C/C++條形圖

我正在尋找一個類似於Windows任務管理器「性能」視圖的簡單的帶狀圖(aka。graphing)控件。並發現了幾個,但它們都依賴於MFC或.NET :(

我希望有人在這裏可能有或知道哪裏可以得到一個簡單的帶狀圖的Win32控制,是不是MFC。

感謝。

回答

1

如果你已經找到了一個好的MFC控件,也許你最好的辦法就是將代碼自己轉換爲純Win32 - 畢竟MFC是Win32 API的一個小包裝,出於興趣,什麼是MFC控制你找到了嗎?

0

我不認爲在Win32公共控制庫中有一個標準的控制庫。使用別人的小部件庫,或者使用GDI來繪製圖表。它可能不是很難推出自己 - 只需創建一個位圖控件,並在每次數據更新到您在內存中繪製的圖形時設置圖像。

+1

我覺得這似乎有點小題大做。如果我們正在談論Win32 GDI,則不需要「位圖控制」。只要處理油漆消息並獲得DC,即可進入! – Aardvark 2008-09-25 16:57:59

+1

直接繪製到DC上會導致閃爍。儘管'位圖控制'方法有點奇怪IMO,但對於自定義MFC控件,您需要處理WM_PAINT,創建一個內存位圖並至少將其繪製到內存DC中。 – Roel 2008-10-07 14:12:25

2

如果你必須走自己的路線看看折線GDI呼叫。這可以在一次通話中爲您畫出整條線。

我使用自定義代碼(無第三方控件,所有win32 GDI)繪製圖表的系統上工作。這聽起來很難,但並不是那麼糟糕。

將座標空間中的點映射到設備上下文,繪製網格線/背景和Ployline的小數學運算。完成! ;)

你可以使用GDI映射模式使數學變得簡單(但我不會)。

1

幾個月前,我也遇到了同樣的問題:試圖找到一個性能監視庫的現有實現,它類似於Windows任務管理器。然而,因爲我找不到任何現有的庫在多平臺(不依賴於MFC或.NET)上工作,所以我決定創建自己的庫:-)

今天我剛剛發佈了這個測試版本庫,並將其作爲開源項目提供。 看看這裏:http://code.google.com/p/qw-performance-monitoring/

讓我知道這是否有用。我仍在做一些測試,以確保此庫中的每個功能都可以在Mac,Linux和Windows上運行。一旦我完成了測試,我將發佈穩定版本。對於當前的時間,享受用這個測試版:-)