2010-12-09 2 views
3

QStatusBar에서 텍스트를 가운데 정렬하는 방법은 무엇입니까? 기본적으로 항상 왼쪽으로 정렬됩니다.qt 상태 표시 줄 가운데 맞춤?

나는 QLabel을 추가하고 정렬을 설정할 수 있음을 알고 있지만 일반 텍스트와 .showMessage (QString, int) 메서드를 사용하려고하므로 시간 제한 값을 추가 할 수 있습니다. 배치합니다 상태 메시지

showMessage을 가려 될 수 정렬 위젯 왼쪽 - - 표시 - 정렬 위젯 오른쪽

addWidget를 배치

addPermanentWidget :

답변

2

QStatusBar 여기에 노트의 세 가지 기능을 가지고있다 상태 메시지

이들은 상태 표시 줄에 대한 확립 된 표준입니다. 당신이 찾고있는 것을 얻기 위해 해킹 할 수는 있지만, 나는 당신의 필요를 재고 할 것을 제안합니다. 아마도 귀하의 QLabel 대신 addPermanentWidget 함께 배치해야합니까?

대한 추가 정보를 원하시면 워드 프로세서를 살펴 보자 방금 전 상태 표시 줄에 메시지 자체를 중심하려면 http://doc.qt.io/qt-5/qstatusbar.html

+0

좋습니다. addPermanenetWidget을 사용하면 타임 아웃을 어떻게 추가 할 수 있습니까? – ZolaKt

+1

QTimer 사용. qlabel에 메시지를 표시 할 때 singleshot로 시작하고 시간 초과시 레이블 텍스트를 정리하는 간단히 함수를 작성하십시오. – Raiv

+0

@ ZolaKt : 그게 무슨 소리 야? 임시 텍스트를 QLabel에 표시하려고합니까? showMessage 함수를 원래 의도대로 사용하지 않는 이유는 무엇입니까? – OliJG

3

는, 다음과 같이 이동합니다 :

QLabel* statusLabel = new QLabel("Your Message"); 
statusBar()->addWidget(statusLabel,1); 

이 추가 매개 변수 1 뻗어 당신의 상태 표시 줄의 전체 너비를 레이블링하십시오.

인사말