2017-07-03 26 views
-2

我正在嘗試創建一個QT gui應用程序(用於教育目的),以便訪問硬盤的原始數據。我添加了一個32 + 1列(字節+偏移量)的表格和一個單獨的垂直滾動條。該應用程序只讀取可見(到表格佈局)字節。當用戶旋轉表格窗口小部件並刷新顯示的數據時,會觸發事件。QT - 我如何創建一個長int(而不是int)步驟的滾動條?

我也希望滾動條有類似的行爲(當然是可拖動的)。在這種情況下,我必須將滾動條(步)的最大值設置爲totalHdBytes/32。但是,在大多數情況下,它是一個長整數(不是int),因此不能從QScrollBar對象接受。

我的問題是:

我如何創建與儘可能多步驟的滾動條,因爲我想要的嗎?

+2

你能分享源代碼嗎? – saygins

+2

我認爲你不會有足夠的顯示/鼠標分辨率來使用這麼大的值。您需要查看您的用戶體驗/用戶界面。滾動條不是爲精確定位而設計的。 –

回答

0

正如Dmitry所建議的那樣,由於沒有足夠的顯示/鼠標分辨率,創建帶有大數字的QScrollBar是沒有用的(也不是直接可能的)。因此,我建議你做到以下幾點:

+0

當按下箭頭按鈕時,我不想(也不等待)看到滾動條移動。我想要的是能夠在任何位置拖動條形,然後在按下箭頭時將表格內容向上或向下「移動」。我強調滾動條不屬於表格小部件。表格的內容總是完全符合其大小。我使用單獨的滾動條作爲竅門,讓用戶在任何時候都能感知到磁盤的所有內容都被加載到內存中。我迄今爲止實施的最佳解決方案是您的第二個建議,但這不完全是我想要的。 – takpan

+0

但用戶不會注意到區別。所以,我認爲這是一個很好的解決方案。 – m7913d

+1

用戶會注意到,單擊滾動條上的箭頭或滾輪一步可以將表格內容向上或向下移動多個(而不是一個)行。無論如何,這並不是一個大問題,因爲我已經正確地在桌子小部件上實施了輪子旋轉(一個輪子步驟=上/下一行)。我只是想知道這個具體操作(我在其他原始數據編輯器中看到的)如何完成。 – takpan

相關問題