在對qtablewiget進行了表頭設定等動作後,**仍無法進行顯示。
原因:在將tablewidget拖至ui介面後,預設只是申請了這樣乙個物件,而該物件的預設行列設定為0,可在qt右下側屬性–qtablewidget中看到,此時行、列值均為0,如下:
調整該值後即可進行顯示。
**不能平鋪佔滿視窗,只顯示一部分,如下圖:
方法一:
解決辦法:新增如下語句
//設定表寬自動填滿且為等寬
ui->tablewidget-
>
horizontalheader()
->
setsectionresizemode
(qheaderview::stretch)
;
解決後介面如下:
解決辦法,設定根據內容大小自適應:
//設定根據內容自適應寬度的列,第1個引數為要自適應的列數
ui->tablewidget-
>
horizontalheader()
->
setsectionresizemode(0
, qheaderview::resizetocontents)
;
解決後介面如下:
注意:不能將整個**都做如下自適應,否則將導致**不能填充整個視窗,如下:
設定水平滾動條,**如下:
//初始列寬,根據表寬均分
ui.tablewidget-
>
setcolumnwidth(0
,ui.tablewidget-
>
width()
/4);
ui.tablewidget-
>
setcolumnwidth(1
,ui.tablewidget-
>
width()
/4);
ui.tablewidget-
>
setcolumnwidth(2
,ui.tablewidget-
>
width()
/4);
ui.tablewidget-
>
setcolumnwidth(3
,ui.tablewidget-
>
width()
/4);
//設定列寬可拖動
ui.tablewidget-
>
horizontalheader()
->
setresizemode
(qheaderview::interactive)
;ui.tablewidget-
>
verticalheader()
->
setresizemode
(qheaderview::interactive)
;//設定table的水平滾動條
ui.tablewidget-
>
sethorizontalscrollbarpolicy
(qt::scrollbaralwayson)
;
一些存在的問題:該方法可以使得在小視窗模式下資料能左右觀察,而不是列佔位大小壓縮狀態,但資料內容仍會被壓縮,如下圖:
可以看到下方出現滾動條,但身份證號碼內容仍被壓縮。
使用該方法後在大視窗模式下,會導致無法平鋪。而若將平鋪**調至滾動條**後,又會導致小視窗模式下不能以滾動條方式顯示,如下圖:
解決辦法待更新!!!
問題如下圖:
只需進行背景顏色(和字型顏色)的設定即可。
//設定表頭背景和字型顏色
ui->tablewidget-
>
horizontalheader()
->
setstylesheet
("qheaderview::section"
);
rgb配色表引數值鏈結
設定後可新增橫線,如下:
[1]. qt qtablewidget **列寬 自動填滿
[2]. rgb配色表引數值鏈結
[3]. 乙個大佬關於qtablewidget的總結
[4]. 關於tablewidget的列寬拖動和滾動條設定
面試所遇問題
一.python中元組合列表有什麼區別?python 的元組與列表類似,不同之處在於元組的元素不能修改,元組中的元素不能被刪除。元組使用小括號,列表使用方括號。二.c 中友元函式的作用?友元函式提供了不同類或物件的成員函式之間 類的成員函式和一般函式之間進行資料共享的機制。通俗的說,友元關係就是乙個...
工作所遇問題總結
入職後,單位給看的第乙個專案 是mfc程式,裡面利用cwintread類來生成乙個工作執行緒,而這個執行緒是可以接收訊息的,這讓我感覺很驚奇,居然還有這樣的技術?這個執行緒可以接收訊息,也可以利用postthreadmessage給主線程傳送訊息,真是讓我感覺新奇。我一定要弄明白,其中的道理!軟體狗...
Python學習所遇問題
print 遊戲開始 num input 猜數字 guess int num while guess 8 num input 猜錯啦請重新輸入 guess int num if guess 8 print 恭喜你猜對了 else if guess 8 print 偏大 else print 偏小 p...