클래스 이벤트 함수 사용법 문의
448
작성한 질문수 10
답변 1
0
안녕하세요. 김재우님 ,
QTreeView 에는 " doubleClicked(const QModelIndex &index) " 라는 Signal 이 있습니다. 이 시그널을 Slot 함수와 연결해주면, 클릭한 해당 디렉토리 또는 파일에 대한 정보를 얻어 올 수 있습니다.
예를 들어 아래와 같이 사용할 수 있습니다.
Widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include <QtWidgets>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = 0);
~Widget();
private:
QFileSystemModel *m_model;
private slots:
void on_treeView_doubleClicked(const QModelIndex& index);
};
#endif // WIDGET_H
Widget.cpp
#include "widget.h"
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
setWindowTitle("Model/View - QTreeView and QListView");
resize(600, 300);
QSplitter *splitter = new QSplitter(this);
// Model class
m_model = new QFileSystemModel;
m_model->setRootPath(QDir::currentPath());
// View widget - QTreeView
QTreeView *tree = new QTreeView(splitter);
tree->setModel(m_model);
tree->setRootIndex(m_model->index(QDir::currentPath()));
QVBoxLayout *layout = new QVBoxLayout();
layout->addWidget(tree);
setLayout(layout);
connect(tree, SIGNAL(doubleClicked(QModelIndex)),
this, SLOT(on_treeView_doubleClicked(QModelIndex)));
}
void Widget::on_treeView_doubleClicked(const QModelIndex& index)
{
qDebug() << m_model->filePath(index);
}
Widget::~Widget()
{
}
0
Assistant 툴에서 보시면 찾을 수 있습니다. QTreeView 는 QAbstractItemView 클래스로부터 상속받는데, 이 클래스에 보면 확인 하실 수 있습니다.
아래 그림에서 보는 것과 같이 빨간색으로 테두리 되어있는 링크를 클릭하시면 됩니다.
Assistant 가 Qt 버전마다 조금씩 형식이 다룰 수 있습니다. 따라서 inherited members 와 관련된 링크를 클릭하시면 됩니다.

Build system의 Obs 에 관한 질문
1
40
2
강의 재수강 문의
1
63
2
강의 연장 문의
1
84
2
강의 연장 질문
1
66
2
코드 크가가 너무 작은대 이거 화면확대 어떻게 하나요?
0
185
4
Qt6 우분투에서 컴파일 안됨.
1
196
2
Qt5 라이센스 질문(상업적용도)
1
2076
2
Qt creator 환경문제
1
856
2
프로젝트 생성시 kits selection에서 워닝마크
1
273
1
Container Class 관련 질문
1
263
1
하드코딩으로 위젯 구현할 때, 소멸자도 구현해야되나요?
1
435
1
QMainWindow setStatusTip이 적용되지 않습니다
1
321
1
section3 signal-slot 함수부분 이해안됨
1
287
1
윈도우에서 큐티 프로그램 설치 문제
1
697
1
라이선스 관련 문의
1
375
1
QT로 Html이나 PDF 리포트 만드는 방법 문의 드립니다.
2
2166
2
다중선택한 checkbox의 동작을 순차적으로 실행하는 방법 문의
1
321
1
visual stduio ide 환경에서 코드 작성 및 실행 방법
1
425
1
Qt 혹은 QML maps 문의
2
625
1
예제 실습 오타 제보합니다
1
387
1
No documentation available. 이 뜹니다.
1
338
1
리눅스 온라인 인스톨러에서의 설치 항목이 강의 슬라이드와 다릅니다.
1
735
2
Qt Creator 메뉴에 중국어
1
1036
1
qt6 궁금
1
727
1





