QT通過點選獲得帶滾動條介面的座標(QT系列9)

2021-10-05 18:41:34 字數 1085 閱讀 2844

獲得帶滾動條介面的座標前提知識為:

1.滑鼠事件qt鍵盤滑鼠事件

2.新建帶滾動條介面qt新建帶滾動條介面的兩種方式

獲得帶滾條介面的座標與獲得主介面座標的區別,就在於我們需要獲得滾動條滑過的距離,並通過這個距離實現座標系的變換。

1.新建工程

基類型別選擇為qwidget

在ui介面拖入乙個pushbutton

2.修改.**件

引入標頭檔案qmouseevent、qscrollarea、qscrollbar

引入虛函式void mousepressevent(qmouseevent *e);

定義幾個變數:s,w,sx,sy分別為帶滾動條的主介面、實際介面,橫豎滾動條移動的距離。

**如下:

#ifndef widget_h

#define widget_h

#include

#include

#include

#include

namespace ui

class

widget

:public qwidget

;#endif

// widget_h

3.修改widget.cpp檔案

#include

"widget.h"

#include

"ui_widget.h"

widget::

widget

(qwidget *parent)

:qwidget

(parent),ui

(new ui::widget)

widget::

~widget()

void widget::

mousepressevent

(qmouseevent *e)

建構函式裡定義s和w的介面引數,並把w設定為s的widget。

滑鼠按下函式中通過獲得橫豎滾動條走過的value對最終顯示座標進行修改。

div帶滾動條

當div所定義的區域的內容達到一定程度時,在div標籤裡面嵌入css樣式表,定義overflow的屬性值,設定滾動條相關的屬性。注 1.overflow visible 卻省值,沒有滾動條,根據內容自動擴撐區域的大小,即定義的區域無效 scroll 總是顯示滾動條 hidden 沒有滾動條,超出區域...

Qt 滾動條樣式設定

新手編碼,記錄以防忘記。qscrollbar vertical width 9px background rgba 56,135,255,0 margin 0px,0px,0px,0px padding top 9px 留出9px給上面和下面的箭頭 padding bottom 9px qscrol...

JS提交表單帶滾動條

前提 需要使用者自行搜尋wait.gif滾動條,並且需要引入jquery.js。1.編寫js方法showdiv function showdiv thisobjid var yscroll document.documentelement.scrolltop thisobjid css top 10...