C 關於自帶滾動條控制項的滾動條跳動問題

2021-09-03 08:46:17 字數 711 閱讀 9874

今天偶爾發現那個panel的垂直滾動條如果不做任何處理,每次獲得焦點後位置老是變動。當拖動到某個位置,有另乙個視窗擋住後,再顯示出來它的滾動條就不在原來的位置了?這個怎麼解決呢?

例如,視窗1的panel滾動條一開始拖動到最底端,然後開啟另乙個程式視窗2擋住;然後將剛開啟的視窗2最小化,那個視窗1顯示出來了,結果滾動條莫名其妙的跳動到上面了,根本不在最底端。

如圖圖1:初始位置

圖2:當失去焦點,又重新獲得焦點後

其實這個很好解決,繼承panel,重寫scrolltocontrol方法。如下,

public partial class mypanel : panel                          protected override point scrolltocontrol(control activecontrol)                }
又試了下,其它凡是要滾動條的控制項都有這個毛病,一或得焦點滾動條就跳動。還是那個方法。重寫這個控制項的scrolltocontrol就可以了。

例如,form控制項也一樣,

public partial class form1 : form                  protected override point scrolltocontrol(control activecontrol)                }

C 關於自帶滾動條控制項的滾動條跳動問題

今天偶爾發現那個panel的垂直滾動條如果不做任何處理,每次獲得焦點後位置老是變動。當拖動到某個位置,有另乙個視窗擋住後,再顯示出來它的滾動條就不在原來的位置了?這個怎麼解決呢?例如,視窗1的panel滾動條一開始拖動到最底端,然後開啟另乙個程式視窗2擋住 然後將剛開啟的視窗2最小化,那個視窗1顯示...

滾動條控制項

滾動條通常用於瀏覽顯示內容 確定位置,也可以作為資料輸入的工具。滾動條分為水平滾動條 hscrollbar horizontal scrollbar 和垂直滾動條 vscrollbar vertical scrollbar 當滾動條位於最左端或頂端時,表示其值最小,反之為最大。滾動條常用事件 cha...

關於滾動條

定義滾動條軌道 style 3 webkit scrollbar track 定義滾動條高寬及背景 style 3 webkit scrollbar 定義滑塊 style 3 webkit scrollbar thumb 要在兩個div裡面顯示滾動條 1.首先div需要設定高度 2.內容必須超過di...