2010-02-08 55 views
1

我正在使用NPlot圖表庫來繪製說明信號波動的若干圖。這些圖在一個flowlayoutpanel1中一個在另一個之下插入。 x軸是時間。 y是信號的值。 我在x軸的底部添加了一個trackbar。當用戶移動軌跡條時,每個信號的值顯示在某處(相對於軌跡條的位置)。在多個NPlots或替代解決方案中繪製單個指南

所有這些都已經有效。

我被要求添加一些直觀的方式來說明跟蹤欄的確切時間。他們想要某種垂直線,可以跟蹤所有Nplots的軌跡條。然而,他們願意選擇。

我已經嘗試繪製線條,但很難繪製關於跟蹤欄的位置。它最終被繪製在Nplots之後。

我也嘗試在流程面板上繪製一個靜態網格,但Nplots不透明,而且我的老闆不喜歡每個有美化目的的單個網格。

在這一點上,我開放給任何「開箱即用」的建議,或更正我的實施。我是用C#自學的,所以我之前沒有做過這樣的事情。

請幫忙!

編輯:通過使用具有邊框的標籤,將它拉長爲高並且寬度爲1,我得到了稍微更好的效果。這會創建一個覆蓋所有其他控件的直線。現在我最大的挑戰是計算軌跡指針的位置,使線匹配它...

回答

0

經過大量的擺弄,我發現唯一的方式來繪製所有其他控件繪製線的唯一方法是不使用因爲放置在頂部的控件不透明,我無法訪問它們的圖形組件(是一個導入的控件而不是.NET類)。

我結束了與編輯解決方案,採取帶有邊框的標籤,並將寬度爲1,創建一個簡單的線條,而不是一個盒子。

位置公式需要大量精細調整,要走的路是計算(估計)兩個軌跡線刻度之間的寬度併爲控件本身添加一個微小的偏移量。使用traback的指針Value屬性,我可以計算標籤/行的位置,以便它跟隨trackbar指針。有時會形成一個微小的偏移,但肉眼看不到。