QT에서 위젯 크기를 복원하는 간단한 방법이 있습니까?

StackOverflow https://stackoverflow.com/questions/680844

  •  22-08-2019
  •  | 
  •  

문제

QT 앱에서 Windows 크기를 보존하는 방법을 찾고 있습니다.

모든 위젯에 대해 다음 방법을 사용할 가능성이 있음을 알았습니다.

saveGeometry()

그러나 실제로, 나는 이것이 만족스러운 방법을 찾지 못합니다. 같은 것이 있습니까? setAutosaveGeometry(True)?

특히 테이블 열의 너비를 저장하는 방법을 찾고 있습니다.

도움이 되었습니까?

해결책

그만큼 qheaderView 클래스는 또한 qbytearray : savestate () 및 retorestate ()로 상태를 저장하고 복원하는 두 가지 방법이 있습니다.

테이블 뷰의 헤더는 HorizOntalHeader () 및 verticalHeader () 메소드를 통해 액세스 할 수 있습니다.

다른 팁

SaverGeometry는 QbytearRay 값을 반환하면 어딘가에 저장해야합니다.

예시:

void MainWindow::closeEvent(QCloseEvent *event){
    QSettings settings;

    settings.setValue("geometry", saveGeometry());
}

지오메트리를 읽으려면 RestoreGeometry 함수를 호출하십시오.

MainWindow::MainWindow(QWidget *parent):QMainWindow(parent) {
    [...]

    QSettings settings;

    restoreGeometry(settings.value("geometry").toByteArray());

    [...]
}

창 지오메트리에 대한 자세한 내용은 읽으십시오 문서

QT 문서를 참조하십시오 창의 기하학 복원.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top