2009-02-28 39 views
6

我正在C#中的winforms點唱機上工作。我想爲音量控制設置一個垂直進度條。有誰知道這是怎麼做到的嗎?如何讓C#中的winforms進度條垂直移動?

+0

請不要爲此使用進度條;垂直軌跡欄是最合適的控制。進度條設計用於視覺輸出,並且以這種方式濫用控件會導致難以使用的用戶界面。 – Rob 2009-02-28 03:40:31

+0

這是一個很好的觀點。我看到「垂直進度條」,並沒有看其餘的。進度條可能不是用來顯示音量控制級別的東西。 – 2009-02-28 06:14:15

回答

17

我不知道,我會使用一個進度條控制體積,而是顯示你可以使用一個用戶繪製控件或者你可以只調整一個標籤與背景色的音量(雖然最後一種方法雖然有點類似)

進度條並不是要輸入,不管是什麼方向。

如果你真的想控制的音量,考慮使用垂直滾動條,或與a vertical orientation跟蹤欄。

對於它的價值,有a discussion on how to create a vertical progress bar on MSDN,他們建議這樣做:

using System; 
using System.Windows.Forms; 

public class VerticalProgressBar : ProgressBar { 
    protected override CreateParams CreateParams { 
    get { 
     CreateParams cp = base.CreateParams; 
     cp.Style |= 0x04; 
     return cp; 
    } 
    } 
} 

這臺PBS_VERTICAL標誌Style

+0

+1:「在我的機器上工作」 – Sung 2009-02-28 06:06:09

6

您必須爲此使用ProgressBarRenderer。它記錄在MSDN

該文檔實際上顯示了一個垂直ProgressBar的實現,所以它應該會讓你更容易。 :-)