QFileDialog Class
QFileDialog 클래스는 사용자가 파일 또는 디렉터리를 선택할 수 있는 대화 상자를 제공합니다. 더 보기...
헤더: | #include <QFileDialog> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
상속합니다: | QDialog |
- 상속된 멤버를 포함한 모든 멤버 목록
- QFileDialog는 표준 대화 상자의 일부입니다.
공용 유형
enum | AcceptMode { AcceptOpen, AcceptSave } |
enum | DialogLabel { LookIn, FileName, FileType, Accept, Reject } |
enum | FileMode { AnyFile, ExistingFile, Directory, ExistingFiles } |
enum | Option { ShowDirsOnly, DontResolveSymlinks, DontConfirmOverwrite, DontUseNativeDialog, ReadOnly, …, DontUseCustomDirectoryIcons } |
flags | Options |
enum | ViewMode { Detail, List } |
속성
|
|
공용 함수
QFileDialog(QWidget *parent, Qt::WindowFlags flags) | |
QFileDialog(QWidget *parent = nullptr, const QString &caption = QString(), const QString &directory = QString(), const QString &filter = QString()) | |
virtual | ~QFileDialog() |
QFileDialog::AcceptMode | acceptMode() const |
QString | defaultSuffix() const |
QDir | directory() const |
QUrl | directoryUrl() const |
QFileDialog::FileMode | fileMode() const |
QDir::Filters | filter() const |
QStringList | history() const |
QAbstractFileIconProvider * | iconProvider() const |
QAbstractItemDelegate * | itemDelegate() const |
QString | labelText(QFileDialog::DialogLabel label) const |
QStringList | mimeTypeFilters() const |
QStringList | nameFilters() const |
void | open(QObject *receiver, const char *member) |
QFileDialog::Options | options() const |
QAbstractProxyModel * | proxyModel() const |
bool | restoreState(const QByteArray &state) |
QByteArray | saveState() const |
void | selectFile(const QString &filename) |
void | selectMimeTypeFilter(const QString &filter) |
void | selectNameFilter(const QString &filter) |
void | selectUrl(const QUrl &url) |
QStringList | selectedFiles() const |
QString | selectedMimeTypeFilter() const |
QString | selectedNameFilter() const |
QList<QUrl> | selectedUrls() const |
void | setAcceptMode(QFileDialog::AcceptMode mode) |
void | setDefaultSuffix(const QString &suffix) |
void | setDirectory(const QString &directory) |
void | setDirectory(const QDir &directory) |
void | setDirectoryUrl(const QUrl &directory) |
void | setFileMode(QFileDialog::FileMode mode) |
void | setFilter(QDir::Filters filters) |
void | setHistory(const QStringList &paths) |
void | setIconProvider(QAbstractFileIconProvider *provider) |
void | setItemDelegate(QAbstractItemDelegate *delegate) |
void | setLabelText(QFileDialog::DialogLabel label, const QString &text) |
void | setMimeTypeFilters(const QStringList &filters) |
void | setNameFilter(const QString &filter) |
void | setNameFilters(const QStringList &filters) |
void | setOption(QFileDialog::Option option, bool on = true) |
void | setOptions(QFileDialog::Options options) |
void | setProxyModel(QAbstractProxyModel *proxyModel) |
void | setSidebarUrls(const QList<QUrl> &urls) |
void | setSupportedSchemes(const QStringList &schemes) |
void | setViewMode(QFileDialog::ViewMode mode) |
QList<QUrl> | sidebarUrls() const |
QStringList | supportedSchemes() const |
bool | testOption(QFileDialog::Option option) const |
QFileDialog::ViewMode | viewMode() const |
재구현된 공용 함수
virtual void | setVisible(bool visible) override |
시그널
void | currentChanged(const QString &path) |
void | currentUrlChanged(const QUrl &url) |
void | directoryEntered(const QString &directory) |
void | directoryUrlEntered(const QUrl &directory) |
void | fileSelected(const QString &file) |
void | filesSelected(const QStringList &selected) |
void | filterSelected(const QString &filter) |
void | urlSelected(const QUrl &url) |
void | urlsSelected(const QList<QUrl> &urls) |
정적 공용 멤버
QString | getExistingDirectory(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), QFileDialog::Options options = ShowDirsOnly) |
QUrl | getExistingDirectoryUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), QFileDialog::Options options = ShowDirsOnly, const QStringList &supportedSchemes = QStringList()) |
void | getOpenFileContent(const QString &nameFilter, const std::function<void (const QString &, const QByteArray &)> &fileOpenCompleted, QWidget *parent = nullptr) |
QString | getOpenFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options()) |
QStringList | getOpenFileNames(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options()) |
QUrl | getOpenFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList()) |
QList<QUrl> | getOpenFileUrls(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList()) |
QString | getSaveFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options()) |
QUrl | getSaveFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList()) |
void | saveFileContent(const QByteArray &fileContent, const QString &fileNameHint, QWidget *parent = nullptr) |
재구현된 보호 함수
virtual void | accept() override |
virtual void | changeEvent(QEvent *e) override |
virtual void | done(int result) override |
상세 설명
사용자가 파일 시스템을 탐색하여 하나 또는 여러 개의 파일 또는 디렉터리를 선택할 수 있도록 하는 QFileDialog 클래스입니다.
가장 쉬운 방법은 getOpenFileName()와 같은 정적 함수를 사용하여 QFileDialog를 만드는 것입니다.
fileName = QFileDialog::getOpenFileName(this, tr("Open Image"), "/home/jana", tr("Image Files (*.png *.jpg *.bmp)"));
위 예제에서는 정적 함수를 사용하여 모달 QFileDialog를 만들었습니다. 이 대화 상자는 처음에 "/home/jana" 디렉터리의 내용을 표시하고 "이미지 파일(*.png *.jpg *.bmp)" 문자열에 지정된 패턴과 일치하는 파일을 표시합니다. 파일 대화 상자의 상위 항목은 이 항목으로 설정되고 창 제목은 "이미지 열기"로 설정됩니다.
여러 필터를 사용하려면 각 필터를 두 개의 세미콜론으로 구분합니다. 예를 들어
"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"
정적 함수를 사용하지 않고도 자신만의 QFileDialog를 만들 수 있습니다. setFileMode ()를 호출하여 사용자가 대화 상자에서 무엇을 선택해야 하는지 지정할 수 있습니다:
QFileDialog dialog(this); dialog.setFileMode(QFileDialog::AnyFile);
위의 예에서는 파일 대화 상자의 모드가 AnyFile 으로 설정되어 있어 사용자가 아무 파일이나 선택하거나 존재하지 않는 파일도 지정할 수 있습니다. 이 모드는 '다른 이름으로 저장' 파일 대화 상자를 만들 때 유용합니다. 사용자가 기존 파일을 선택해야 하는 경우에는 ExistingFile, 디렉터리만 선택할 수 있는 경우에는 Directory 을 사용합니다. 전체 모드 목록은 QFileDialog::FileMode 열거형을 참조하세요.
fileMode 속성에는 대화 상자의 작동 모드가 포함되어 있으며, 이는 사용자가 선택할 것으로 예상되는 개체 유형을 나타냅니다. setNameFilter ()를 사용하여 대화 상자의 파일 필터를 설정합니다. 예를 들어
dialog.setNameFilter(tr("Images (*.png *.xpm *.jpg)"));
위의 예에서 필터는 "Images (*.png *.xpm *.jpg)"
로 설정되어 있습니다. 즉, 확장자가 png
, xpm
, 또는 jpg
인 파일만 QFileDialog에 표시됩니다. setNameFilters ()를 사용하여 여러 필터를 적용할 수 있습니다. selectNameFilter ()를 사용하여 파일 대화 상자의 기본 필터로 지정한 필터 중 하나를 선택합니다.
파일 대화 상자에는 List 및 Detail 의 두 가지 보기 모드가 있습니다. List 는 현재 디렉터리의 내용을 파일 및 디렉터리 이름 목록으로 표시합니다. Detail 도 파일 및 디렉터리 이름 목록을 표시하지만 각 이름과 함께 파일 크기 및 수정 날짜 등의 추가 정보를 제공합니다. setViewMode ()로 모드를 설정합니다:
dialog.setViewMode(QFileDialog::Detail);
나만의 파일 대화 상자를 만들 때 마지막으로 사용해야 하는 중요한 기능은 selectedFiles()입니다.
QStringList fileNames; if (dialog.exec()) fileNames = dialog.selectedFiles();
위의 예에서는 모달 파일 대화 상자가 생성되어 표시됩니다. 사용자가 확인을 클릭하면 선택한 파일이 fileName
에 저장됩니다.
대화 상자의 작업 디렉터리는 setDirectory()로 설정할 수 있습니다. 현재 디렉터리의 각 파일은 selectFile() 함수를 사용하여 선택할 수 있습니다.
표준 대화상자 예제는 QFileDialog와 다른 내장 Qt 대화상자를 사용하는 방법을 보여줍니다.
기본적으로 플랫폼에 기본 파일 대화 상자가 있는 경우 플랫폼 네이티브 파일 대화 상자가 사용됩니다. 이 경우 대화 상자를 구성하는 데 사용되는 위젯은 인스턴스화되지 않으므로 layout() 및 itemDelegate()와 같은 관련 접근자는 null을 반환합니다. 또한 모든 플랫폼에서 제목 표시줄이 있는 파일 대화 상자가 표시되는 것은 아니므로 캡션 텍스트가 사용자에게 표시되지 않을 수 있다는 점에 유의하세요. DontUseNativeDialog 옵션을 설정하거나 AA_DontUseNativeDialogs 애플리케이션 속성을 설정하여 기본 대화 상자 대신 위젯 기반 구현이 사용되도록 할 수 있습니다.
QDir, QFileInfo, QFile, QColorDialog, QFontDialog 및 표준 대화 상자 예시도참조하세요 .
멤버 유형 문서
enum QFileDialog::AcceptMode
상수 | 값 |
---|---|
QFileDialog::AcceptOpen | 0 |
QFileDialog::AcceptSave | 1 |
enum QFileDialog::DialogLabel
상수 | 값 |
---|---|
QFileDialog::LookIn | 0 |
QFileDialog::FileName | 1 |
QFileDialog::FileType | 2 |
QFileDialog::Accept | 3 |
QFileDialog::Reject | 4 |
enum QFileDialog::FileMode
이 열거형은 사용자가 파일 대화 상자에서 선택할 수 있는 항목, 즉 사용자가 확인을 클릭하면 대화 상자가 반환하는 항목을 나타내는 데 사용됩니다.
상수 | 값 | 설명 |
---|---|---|
QFileDialog::AnyFile | 0 | 파일 존재 여부에 관계없이 파일의 이름입니다. |
QFileDialog::ExistingFile | 1 | 존재하는 단일 파일의 이름입니다. |
QFileDialog::Directory | 2 | 디렉토리의 이름입니다. 파일과 디렉터리가 모두 표시됩니다. 그러나 기본 Windows 파일 대화 상자는 디렉토리 선택기에서 파일 표시를 지원하지 않습니다. |
QFileDialog::ExistingFiles | 3 | 0개 이상의 기존 파일 이름. |
setFileMode()도 참조하세요 .
열거형 QFileDialog::Option
플래그 QFileDialog::옵션
대화 상자의 동작에 영향을 주는 옵션입니다.
상수 | 값 | 설명 |
---|---|---|
QFileDialog::ShowDirsOnly | 0x00000001 | 디렉터리만 표시합니다. 기본적으로 파일과 디렉터리가 모두 표시됩니다. This option is only effective in the Directory file mode. |
QFileDialog::DontResolveSymlinks | 0x00000002 | 심볼릭 링크를 확인하지 않습니다. 기본적으로 심볼릭 링크는 확인됩니다. |
QFileDialog::DontConfirmOverwrite | 0x00000004 | 기존 파일이 선택된 경우 확인을 요청하지 않습니다. 기본적으로 확인을 요청합니다. This option is only effective if acceptMode is AcceptSave). It is furthermore not used on macOS for native file dialogs. |
QFileDialog::DontUseNativeDialog | 0x00000008 | 플랫폼 네이티브 파일 대화 상자를 사용하지 말고 Qt에서 제공하는 위젯 기반 대화 상자를 사용하십시오( ). By default, a native file dialog is shown unless you use a subclass of QFileDialog that contains the Q_OBJECT macro, the global AA_DontUseNativeDialogs application attribute is set, or the platform does not have a native dialog of the type that you require. 이 옵션을 적용하려면 대화 상자의 다른 속성을 변경하거나 대화 상자를 표시하기 전에 설정해야 합니다. |
QFileDialog::ReadOnly | 0x00000010 | 모델이 읽기 전용임을 나타냅니다. |
QFileDialog::HideNameFilterDetails | 0x00000020 | 파일 이름 필터 세부 정보가 숨겨지는지 여부를 나타냅니다. |
QFileDialog::DontUseCustomDirectoryIcons | 0x00000040 | 항상 기본 디렉토리 아이콘을 사용합니다. 일부 플랫폼에서는 사용자가 다른 아이콘을 설정할 수 있지만 사용자 지정 아이콘 조회는 네트워크 또는 이동식 드라이브에서 심각한 성능 문제를 일으킬 수 있습니다( ). Setting this will enable the DontUseCustomDirectoryIcons option in iconProvider(). 이 열거형 값은 Qt 5.2에 추가되었습니다. |
옵션 유형은 QFlags<Option>에 대한 typedef입니다. 옵션 값의 OR 조합을 저장합니다.
options 와 testOption 를참조하십시오 .
enum QFileDialog::ViewMode
이 열거형은 파일 대화 상자의 보기 모드, 즉 각 파일에 대해 어떤 정보가 표시되는지를 설명합니다.
상수 | 값 | 설명 |
---|---|---|
QFileDialog::Detail | 0 | 디렉토리의 각 항목에 대한 아이콘, 이름 및 세부 정보를 표시합니다. |
QFileDialog::List | 1 | 디렉토리의 각 항목에 대한 아이콘과 이름만 표시합니다. |
setViewMode()도 참조하세요 .
속성 문서
acceptMode : AcceptMode
이 속성은 대화 상자의 수락 모드를 보유합니다.
작업 모드는 대화 상자가 파일 열기용인지 저장용인지 정의합니다.
기본적으로 이 속성은 AcceptOpen 로 설정되어 있습니다.
액세스 기능으로 설정됩니다:
QFileDialog::AcceptMode | acceptMode() const |
void | setAcceptMode(QFileDialog::AcceptMode mode) |
AcceptMode 를참조하세요 .
defaultSuffix : QString
다른 접미사가 지정되지 않은 경우 파일 이름에 추가되는 접미사.
이 속성은 파일 이름에 접미사가 없는 경우 파일 이름에 추가되는 문자열을 지정합니다. 접미사는 일반적으로 파일 유형을 나타내는 데 사용됩니다(예: "txt"는 텍스트 파일을 나타냄).
첫 번째 문자가 점('.')이면 제거됩니다.
함수 액세스:
QString | defaultSuffix() const |
void | setDefaultSuffix(const QString &suffix) |
fileMode : FileMode
이 속성은 대화 상자의 파일 모드를 보유합니다.
파일 모드는 사용자가 대화 상자에서 선택할 것으로 예상되는 항목의 수와 유형을 정의합니다.
기본적으로 이 속성은 AnyFile 로 설정됩니다.
이 함수는 FileName 및 Accept DialogLabel 에 대한 레이블을 설정합니다. setFileMode() 호출 후 사용자 지정 텍스트를 설정할 수 있습니다.
함수에 액세스합니다:
QFileDialog::FileMode | fileMode() const |
void | setFileMode(QFileDialog::FileMode mode) |
FileMode 를참조하세요 .
options : Options
이 속성에는 대화 상자의 모양과 느낌에 영향을 주는 다양한 옵션이 있습니다.
기본적으로 모든 옵션은 비활성화되어 있습니다.
대화 상자 속성을 변경하거나 대화 상자를 표시하기 전에 옵션(특히 DontUseNativeDialog 옵션)을 설정해야 합니다.
대화 상자가 표시된 상태에서 옵션을 설정하면 옵션 및 플랫폼에 따라 대화 상자에 즉각적인 영향을 미치지 않을 수 있습니다.
다른 속성을 변경한 후에 옵션을 설정하면 해당 값이 적용되지 않을 수 있습니다.
함수 액세스:
QFileDialog::Options | options() const |
void | setOptions(QFileDialog::Options options) |
setOption() 및 testOption()도 참조하세요 .
supportedSchemes : QStringList
이 속성에는 파일 대화 상자에서 탐색할 수 있는 URL 체계가 저장됩니다.
이 속성을 설정하면 사용자가 선택할 수 있는 URL 유형을 제한할 수 있습니다. 이는 애플리케이션이 파일 콘텐츠를 가져오기 위해 지원하는 프로토콜을 선언하는 방법입니다. 목록이 비어 있으면 제한이 적용되지 않습니다(기본값). 로컬 파일('파일' 체계)에 대한 지원은 암시적이며 항상 활성화되어 있으므로 제한에 포함할 필요가 없습니다.
액세스 기능:
QStringList | supportedSchemes() const |
void | setSupportedSchemes(const QStringList &schemes) |
viewMode : ViewMode
이 속성은 대화 상자에 파일 및 디렉터리가 표시되는 방식을 유지합니다.
기본적으로 Detail
모드는 파일 및 디렉터리에 대한 정보를 표시하는 데 사용됩니다.
액세스 기능:
QFileDialog::ViewMode | viewMode() const |
void | setViewMode(QFileDialog::ViewMode mode) |
ViewMode 를참조하세요 .
멤버 함수 문서
QFileDialog::QFileDialog(QWidget *parent, Qt::WindowFlags flags)
주어진 parent 와 위젯 flags 으로 파일 대화 상자를 생성합니다.
[explicit]
QFileDialog::QFileDialog(QWidget *parent = nullptr, const QString &caption = QString(), const QString &directory = QString(), const QString &filter = QString())
지정된 parent 및 caption 을 사용하여 지정된 directory 의 내용을 처음에 표시하는 파일 대화 상자를 만듭니다. 디렉터리의 내용은 대화 상자에 표시되기 전에 filter 으로 지정된 필터 목록을 사용하여 세미콜론으로 구분된 필터를 사용하여 필터링됩니다.
[virtual noexcept]
QFileDialog::~QFileDialog()
파일 대화 상자를 삭제합니다.
[override virtual protected]
void QFileDialog::accept()
다시 구현합니다: QDialog::accept().
[override virtual protected]
void QFileDialog::changeEvent(QEvent *e)
다시 구현합니다: QWidget::changeEvent(QEvent * 이벤트).
[signal]
void QFileDialog::currentChanged(const QString &path)
로컬 작업에서 현재 파일이 변경되면 이 신호는 path 매개변수로 새 파일 이름과 함께 전송됩니다.
filesSelected()도 참조하세요 .
[signal]
void QFileDialog::currentUrlChanged(const QUrl &url)
현재 파일이 변경되면 이 신호는 새 파일 URL을 url 매개변수로 사용하여 전송됩니다.
urlsSelected()도 참조하세요 .
QDir QFileDialog::directory() const
현재 대화 상자에 표시되는 디렉터리를 반환합니다.
setDirectory()도 참조하세요 .
[signal]
void QFileDialog::directoryEntered(const QString &directory)
이 신호는 사용자가 directory 을 입력할 때 로컬 작업에 대해 방출됩니다.
QUrl QFileDialog::directoryUrl() const
현재 대화 상자에 표시되는 디렉터리의 URL을 반환합니다.
setDirectoryUrl()도 참조하세요 .
[signal]
void QFileDialog::directoryUrlEntered(const QUrl &directory)
이 신호는 사용자가 directory 을 입력할 때 방출됩니다.
[override virtual protected]
void QFileDialog::done(int result)
재구현합니다: QDialog::done(int r).
[signal]
void QFileDialog::fileSelected(const QString &file)
로컬 작업에 대한 선택이 변경되고 대화 상자가 수락되면 이 신호는 (비어 있을 수 있는) 선택된 file 과 함께 전송됩니다.
currentChanged() 및 QDialog::Accepted도 참조하세요 .
[signal]
void QFileDialog::filesSelected(const QStringList &selected)
로컬 작업에 대한 선택이 변경되고 대화 상자가 수락되면 이 신호는 selected 파일의 (비어 있을 수 있는) 목록과 함께 전송됩니다.
currentChanged() 및 QDialog::Accepted도 참조하세요 .
QDir::Filters QFileDialog::filter() const
파일을 표시할 때 사용되는 필터를 반환합니다.
setFilter()도 참조하세요 .
[signal]
void QFileDialog::filterSelected(const QString &filter)
이 신호는 사용자가 filter 을 선택하면 발산됩니다.
[static]
QString QFileDialog::getExistingDirectory(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), QFileDialog::Options options = ShowDirsOnly)
이 함수는 사용자가 선택한 기존 디렉터리를 반환하는 편리한 정적 함수입니다.
QString dir = QFileDialog::getExistingDirectory(this, tr("Open Directory"), "/home", QFileDialog::ShowDirsOnly | QFileDialog::DontResolveSymlinks);
이 함수는 지정된 parent 위젯을 사용하여 모달 파일 대화 상자를 만듭니다. parent 이 nullptr
이 아닌 경우 대화 상자는 상위 위젯 중앙에 표시됩니다.
대화 상자의 작업 디렉토리는 dir 로 설정되고 캡션은 caption 으로 설정됩니다. 이 중 하나는 빈 문자열일 수 있으며, 이 경우 현재 디렉터리와 기본 캡션이 각각 사용됩니다.
options 인수는 대화 상자를 실행하는 방법에 대한 다양한 옵션을 포함합니다. 전달할 수 있는 플래그에 대한 자세한 내용은 QFileDialog::Option 열거형을 참조하세요. 기본 파일 대화 상자를 사용하려면 ShowDirsOnly 을 설정해야 합니다.
Windows 및 macOS에서 이 정적 함수는 QFileDialog 이 아닌 기본 파일 대화 상자를 사용합니다. 그러나 기본 Windows 파일 대화 상자는 디렉토리 선택기에 파일을 표시하는 기능을 지원하지 않습니다. DontUseNativeDialog 옵션을 전달하거나 글로벌 \l{Qt::}{AA_DontUseNativeDialogs} 애플리케이션 속성을 설정하여 QFileDialog 을 사용하여 파일을 표시해야 합니다.
macOS 기본 파일 대화상자에는 제목 표시줄이 표시되지 않는다는 점에 유의하세요.
Unix/X11에서 파일 대화 상자의 일반적인 동작은 심볼릭 링크를 확인하여 따르는 것입니다. 예를 들어 /usr/tmp
가 /var/tmp
에 대한 심볼릭 링크인 경우 /usr/tmp
을 입력하면 파일 대화 상자가 /var/tmp
로 변경됩니다. options 에 DontResolveSymlinks 이 포함된 경우 파일 대화 상자는 심볼릭 링크를 일반 디렉터리로 취급합니다.
Windows에서는 대화 상자가 QTimer를 디스패치하지 않는 차단 모달 이벤트 루프를 돌리고 parent 이 nullptr
이 아닌 경우 대화 상자를 상위 제목 표시줄 바로 아래에 배치합니다.
getOpenFileName(), getOpenFileNames() 및 getSaveFileName()도 참조하세요 .
[static]
QUrl QFileDialog::getExistingDirectoryUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), QFileDialog::Options options = ShowDirsOnly, const QStringList &supportedSchemes = QStringList())
이 함수는 사용자가 선택한 기존 디렉터리를 반환하는 편리한 정적 함수입니다. 사용자가 취소를 누르면 빈 URL을 반환합니다.
이 함수는 QFileDialog::getExistingDirectory()와 유사하게 사용됩니다. 특히 parent, caption, dir 및 options 은 정확히 같은 방식으로 사용됩니다.
QFileDialog::getExistingDirectory()와의 주요 차이점은 사용자에게 원격 디렉터리를 선택할 수 있는 기능이 제공된다는 점입니다. 그렇기 때문에 반환 유형과 dir 의 유형은 QUrl 입니다.
supportedSchemes 인수를 사용하면 사용자가 선택할 수 있는 URL 유형을 제한할 수 있습니다. 이는 애플리케이션이 파일 콘텐츠를 가져오기 위해 지원하는 프로토콜을 선언하는 방법입니다. 빈 목록은 제한이 적용되지 않음을 의미합니다(기본값). 로컬 파일('파일' 체계)에 대한 지원은 암시적이며 항상 활성화되어 있으므로 제한에 포함할 필요가 없습니다.
가능하면 이 정적 함수는 QFileDialog 이 아닌 네이티브 파일 대화 상자를 사용합니다. 원격 파일 선택을 지원하지 않는 플랫폼에서 Qt는 로컬 파일만 선택할 수 있습니다.
getExistingDirectory(), getOpenFileUrl(), getOpenFileUrls() 및 getSaveFileUrl()도 참조하십시오 .
[static]
void QFileDialog::getOpenFileContent(const QString &nameFilter, const std::function<void (const QString &, const QByteArray &)> &fileOpenCompleted, QWidget *parent = nullptr)
이 함수는 사용자가 선택한 파일의 내용을 반환하는 편리한 정적 함수입니다.
웹 샌드박스가 파일 액세스를 제한하는 경우 이 함수를 사용하여 웹 어셈블리용 Qt에서 로컬 파일에 액세스할 수 있습니다. 이 함수를 구현하면 사용자가 nameFilter 매개 변수를 기반으로 파일을 선택하는 브라우저에 네이티브 파일 대화 상자를 표시할 수 있습니다.
parent 는 웹 어셈블리용 Qt에서는 무시됩니다. 다른 플랫폼에서는 parent 을 전달하여 팝업을 다른 위젯의 자식으로 만듭니다. 플랫폼이 네이티브 파일 대화 상자를 지원하지 않는 경우 함수는 QFileDialog 로 돌아갑니다.
이 함수는 비동기식이며 즉시 반환됩니다. fileOpenCompleted 콜백은 파일이 선택되고 그 내용이 메모리에 읽혀지면 호출됩니다.
auto fileContentReady = [](const QString &fileName, const QByteArray &fileContent) { if (fileName.isEmpty()) { // No file was selected } else { // Use fileName and fileContent } }; QFileDialog::getOpenFileContent("Images (*.png *.xpm *.jpg)", fileContentReady);
[static]
QString QFileDialog::getOpenFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
이 함수는 사용자가 선택한 기존 파일을 반환하는 편리한 정적 함수입니다. 사용자가 취소를 누르면 null 문자열을 반환합니다.
QString fileName = QFileDialog::getOpenFileName(this, tr("Open File"), "/home", tr("Images (*.png *.xpm *.jpg)"));
이 함수는 지정된 parent 위젯을 사용하여 모달 파일 대화 상자를 만듭니다. parent 이 nullptr
이 아닌 경우 대화 상자는 상위 위젯을 가운데에 두고 표시됩니다.
파일 대화 상자의 작업 디렉토리는 dir 으로 설정됩니다. dir 에 파일 이름이 포함되어 있으면 해당 파일이 선택됩니다. 지정된 filter 과 일치하는 파일만 표시됩니다. 선택한 필터는 selectedFilter 로 설정됩니다. 매개 변수 dir, selectedFilter, filter 은 빈 문자열일 수 있습니다. 예를 들어 여러 개의 필터를 사용하려면 ';;'으로 구분하세요:
"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"
options 인수는 대화 상자를 실행하는 방법에 대한 다양한 옵션을 포함합니다. 전달할 수 있는 플래그에 대한 자세한 내용은 QFileDialog::Option 열거형을 참조하세요.
대화 상자의 캡션은 caption 으로 설정됩니다. caption 을 지정하지 않으면 기본 캡션이 사용됩니다.
Windows 및 macOS에서 이 정적 함수는 QFileDialog 이 아닌 기본 파일 대화 상자를 사용합니다. macOS 기본 파일 대화 상자에는 제목 표시줄이 표시되지 않는다는 점에 유의하세요.
Windows에서 이 대화 상자는 QTimer를 디스패치하지 않는 차단 모달 이벤트 루프를 돌리며, parent 이 nullptr
이 아닌 경우 대화 상자를 상위 제목 표시줄 바로 아래에 배치합니다.
Unix/X11에서 파일 대화 상자의 일반적인 동작은 심볼릭 링크를 확인하여 따르는 것입니다. 예를 들어 /usr/tmp
가 /var/tmp
에 대한 심볼릭 링크인 경우 파일 대화 상자는 /usr/tmp
을 입력한 후 /var/tmp
로 변경됩니다. options 에 DontResolveSymlinks 이 포함된 경우 파일 대화 상자는 심볼릭 링크를 일반 디렉터리로 취급합니다.
getOpenFileNames(), getSaveFileName() 및 getExistingDirectory()도 참조하세요 .
[static]
QStringList QFileDialog::getOpenFileNames(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
이 함수는 사용자가 선택한 하나 이상의 기존 파일을 반환하는 편리한 정적 함수입니다.
QStringList files = QFileDialog::getOpenFileNames( this, "Select one or more files to open", "/home", "Images (*.png *.xpm *.jpg)");
이 함수는 지정된 parent 위젯을 사용하여 모달 파일 대화 상자를 만듭니다. parent 이 nullptr
이 아닌 경우 대화 상자는 상위 위젯 중앙에 표시됩니다.
파일 대화 상자의 작업 디렉토리는 dir 으로 설정됩니다. dir 에 파일 이름이 포함되어 있으면 해당 파일이 선택됩니다. 필터는 필터와 일치하는 파일만 표시되도록 filter 으로 설정됩니다. 선택한 필터는 selectedFilter 로 설정됩니다. 매개 변수 dir, selectedFilter 및 filter 는 빈 문자열일 수 있습니다. 여러 개의 필터가 필요한 경우 ';;' 등으로 구분하세요:
"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"
대화 상자의 캡션은 caption 으로 설정됩니다. caption 을 지정하지 않으면 기본 캡션이 사용됩니다.
Windows 및 macOS에서 이 정적 함수는 QFileDialog 이 아닌 기본 파일 대화 상자를 사용합니다. macOS 기본 파일 대화 상자에는 제목 표시줄이 표시되지 않는다는 점에 유의하세요.
Windows에서 이 대화 상자는 Q타이머를 디스패치하지 않는 차단 모달 이벤트 루프를 돌리며, parent 이 nullptr
이 아닌 경우 대화 상자를 상위 제목 표시줄 바로 아래에 배치합니다.
Unix/X11에서 파일 대화 상자의 일반적인 동작은 심볼릭 링크를 확인하여 따르는 것입니다. 예를 들어 /usr/tmp
가 /var/tmp
에 대한 심볼릭 링크인 경우 /usr/tmp
을 입력하면 파일 대화 상자가 /var/tmp
로 변경됩니다. options 인수는 대화 상자를 실행하는 방법에 대한 다양한 옵션을 제공하며, 전달할 수 있는 플래그에 대한 자세한 내용은 QFileDialog::Option 열거형을 참조하세요.
getOpenFileName(), getSaveFileName() 및 getExistingDirectory()도 참조하세요 .
[static]
QUrl QFileDialog::getOpenFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList())
이 함수는 사용자가 선택한 기존 파일을 반환하는 편리한 정적 함수입니다. 사용자가 취소를 누르면 빈 URL을 반환합니다.
이 함수는 QFileDialog::getOpenFileName()와 유사하게 사용됩니다. 특히 parent, caption, dir, filter, selectedFilter 및 options 는 정확히 같은 방식으로 사용됩니다.
QFileDialog::getOpenFileName()와의 주요 차이점은 사용자에게 원격 파일을 선택할 수 있는 기능이 제공된다는 점입니다. 그렇기 때문에 반환 유형과 dir 의 유형은 QUrl 입니다.
supportedSchemes 인수를 사용하면 사용자가 선택할 수 있는 URL 유형을 제한할 수 있습니다. 이는 애플리케이션이 파일 콘텐츠를 가져오기 위해 지원할 프로토콜을 선언하는 방법입니다. 빈 목록은 제한이 적용되지 않음을 의미합니다(기본값). 로컬 파일('파일' 체계)에 대한 지원은 암시적이며 항상 활성화되어 있으므로 제한에 포함할 필요가 없습니다.
가능하면 이 정적 함수는 QFileDialog 이 아닌 네이티브 파일 대화 상자를 사용합니다. 원격 파일 선택을 지원하지 않는 플랫폼에서 Qt는 로컬 파일만 선택할 수 있습니다.
getOpenFileName(), getOpenFileUrls(), getSaveFileUrl() 및 getExistingDirectoryUrl()도 참조하십시오 .
[static]
QList<QUrl> QFileDialog::getOpenFileUrls(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList())
이 함수는 사용자가 선택한 하나 이상의 기존 파일을 반환하는 편리한 정적 함수입니다. 사용자가 취소를 누르면 빈 목록을 반환합니다.
이 함수는 QFileDialog::getOpenFileNames()와 유사하게 사용됩니다. 특히 parent, caption, dir, filter, selectedFilter 및 options 는 정확히 같은 방식으로 사용됩니다.
QFileDialog::getOpenFileNames()와의 주요 차이점은 사용자에게 원격 파일을 선택할 수 있는 기능이 제공된다는 점입니다. 그렇기 때문에 반환 유형과 dir 의 유형은 각각 QList<QUrl> 및 QUrl 입니다.
supportedSchemes 인수를 사용하면 사용자가 선택할 수 있는 URL 유형을 제한할 수 있습니다. 이는 애플리케이션이 파일 콘텐츠를 가져오기 위해 지원하는 프로토콜을 선언하는 방법입니다. 빈 목록은 제한이 적용되지 않음을 의미합니다(기본값). 로컬 파일('파일' 체계)에 대한 지원은 암시적이며 항상 활성화되어 있으므로 제한에 포함할 필요가 없습니다.
가능하면 이 정적 함수는 QFileDialog 이 아닌 네이티브 파일 대화 상자를 사용합니다. 원격 파일 선택을 지원하지 않는 플랫폼에서 Qt는 로컬 파일만 선택할 수 있습니다.
getOpenFileNames(), getOpenFileUrl(), getSaveFileUrl() 및 getExistingDirectoryUrl()도 참조하십시오 .
[static]
QString QFileDialog::getSaveFileName(QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options())
이 함수는 사용자가 선택한 파일 이름을 반환하는 편리한 정적 함수입니다. 파일이 존재할 필요는 없습니다.
지정된 parent 위젯을 사용하여 모달 파일 대화 상자를 만듭니다. parent 이 nullptr
이 아닌 경우 대화 상자는 상위 위젯 중앙에 표시됩니다.
QString fileName = QFileDialog::getSaveFileName(this, tr("Save File"), "/home/jana/untitled.png", tr("Images (*.png *.xpm *.jpg)"));
파일 대화 상자의 작업 디렉토리는 dir 으로 설정됩니다. dir 에 파일 이름이 포함되어 있으면 해당 파일이 선택됩니다. filter 과 일치하는 파일만 표시됩니다. 선택한 필터는 selectedFilter 로 설정됩니다. 매개변수 dir, selectedFilter, filter 는 빈 문자열일 수 있습니다. 여러 개의 필터는 ';;'으로 구분합니다. 예를 들어
"Images (*.png *.xpm *.jpg);;Text files (*.txt);;XML files (*.xml)"
options 인수는 대화 상자를 실행하는 방법에 대한 다양한 옵션을 제공하며, 전달할 수 있는 플래그에 대한 자세한 내용은 QFileDialog::Option 열거형 열거형을 참조하세요.
기본 필터는 selectedFilter 을 원하는 값으로 설정하여 선택할 수 있습니다.
대화 상자의 캡션은 caption 으로 설정됩니다. caption 을 지정하지 않으면 기본 캡션이 사용됩니다.
Windows 및 macOS에서 이 정적 함수는 QFileDialog 이 아닌 기본 파일 대화 상자를 사용합니다.
Windows에서 이 대화 상자는 QTimer를 디스패치하지 않는 차단 모달 이벤트 루프를 돌리며, parent 이 nullptr
이 아닌 경우 대화 상자를 상위 제목 표시줄 바로 아래에 배치합니다. 기본 파일 대화 상자가 있는 macOS에서는 필터 인수가 무시됩니다.
Unix/X11에서 파일 대화 상자의 일반적인 동작은 심볼릭 링크를 확인하여 따르는 것입니다. 예를 들어 /usr/tmp
가 /var/tmp
에 대한 심볼릭 링크인 경우 /usr/tmp
을 입력하면 파일 대화 상자가 /var/tmp
로 변경됩니다. options 에 DontResolveSymlinks 이 포함된 경우 파일 대화 상자는 심볼릭 링크를 일반 디렉터리로 취급합니다.
getOpenFileName(), getOpenFileNames() 및 getExistingDirectory()도 참조하세요 .
[static]
QUrl QFileDialog::getSaveFileUrl(QWidget *parent = nullptr, const QString &caption = QString(), const QUrl &dir = QUrl(), const QString &filter = QString(), QString *selectedFilter = nullptr, QFileDialog::Options options = Options(), const QStringList &supportedSchemes = QStringList())
이 함수는 사용자가 선택한 파일을 반환하는 편리한 정적 함수입니다. 파일이 존재할 필요는 없습니다. 사용자가 취소를 누르면 빈 URL을 반환합니다.
이 함수는 QFileDialog::getSaveFileName()와 유사하게 사용됩니다. 특히 parent, caption, dir, filter, selectedFilter 및 options 는 정확히 같은 방식으로 사용됩니다.
QFileDialog::getSaveFileName()와의 주요 차이점은 사용자에게 원격 파일을 선택할 수 있는 기능이 제공된다는 점입니다. 그렇기 때문에 반환 유형과 dir 의 유형은 QUrl 입니다.
supportedSchemes 인수를 사용하면 사용자가 선택할 수 있는 URL 유형을 제한할 수 있습니다. 이는 애플리케이션이 파일 콘텐츠를 저장하기 위해 지원하는 프로토콜을 선언하는 방법입니다. 빈 목록은 제한이 적용되지 않음을 의미합니다(기본값). 로컬 파일('파일' 체계)에 대한 지원은 암시적이며 항상 활성화되어 있으므로 제한에 포함할 필요가 없습니다.
가능하면 이 정적 함수는 QFileDialog 이 아닌 네이티브 파일 대화 상자를 사용합니다. 원격 파일 선택을 지원하지 않는 플랫폼에서 Qt는 로컬 파일만 선택할 수 있습니다.
getSaveFileName(), getOpenFileUrl(), getOpenFileUrls() 및 getExistingDirectoryUrl()도 참조하십시오 .
QStringList QFileDialog::history() const
파일 로그의 검색 기록을 경로 목록으로 반환합니다.
setHistory()도 참조하세요 .
QAbstractFileIconProvider *QFileDialog::iconProvider() const
파일 로그에서 사용하는 아이콘 공급자를 반환합니다.
setIconProvider()도 참조하세요 .
QAbstractItemDelegate *QFileDialog::itemDelegate() const
파일 로그에서 뷰의 항목을 렌더링하는 데 사용되는 항목 델리게이트를 반환합니다.
setItemDelegate()도 참조하세요 .
QString QFileDialog::labelText(QFileDialog::DialogLabel label) const
지정된 label 에 있는 파일 로그에 표시된 텍스트를 반환합니다.
setLabelText()도 참조하세요 .
QStringList QFileDialog::mimeTypeFilters() const
이 파일 대화 상자에서 작동 중인 MIME 유형 필터를 반환합니다.
setMimeTypeFilters()도 참조하세요 .
QStringList QFileDialog::nameFilters() const
이 파일 대화 상자에서 작동 중인 파일 유형 필터를 반환합니다.
setNameFilters()도 참조하세요 .
void QFileDialog::open(QObject *receiver, const char *member)
이 함수는 대화 상자를 표시하고 receiver 및 member 으로 지정된 슬롯을 선택 변경을 알리는 신호에 연결합니다. fileMode 이 ExistingFiles 인 경우 filesSelected() 신호이며, 그렇지 않으면 fileSelected() 신호입니다.
대화 상자가 닫히면 신호는 슬롯에서 연결이 끊어집니다.
QAbstractProxyModel *QFileDialog::proxyModel() const
파일 대화 상자에서 사용하는 프록시 모델을 반환합니다. 기본적으로 프록시는 설정되어 있지 않습니다.
setProxyModel()도 참조하세요 .
bool QFileDialog::restoreState(const QByteArray &state)
대화 상자의 레이아웃, 기록 및 현재 디렉터리를 지정된 state 으로 복원합니다.
일반적으로 QSettings 와 함께 사용하여 과거 세션에서 크기를 복원합니다.
오류가 있는 경우 false
을 반환합니다.
[static]
void QFileDialog::saveFileContent(const QByteArray &fileContent, const QString &fileNameHint, QWidget *parent = nullptr)
사용자가 선택한 파일 이름과 위치를 사용하여 fileContent 을 파일에 저장하는 편리한 정적 함수입니다. fileNameHint 을 제공하여 사용자에게 파일 이름을 제안할 수 있습니다.
웹 샌드박스가 파일 액세스를 제한하는 경우 이 함수를 사용하여 Qt for WebAssembly의 로컬 파일에 콘텐츠를 저장할 수 있습니다. 이 함수를 구현하면 사용자가 fileNameHint 인수를 기반으로 출력 파일을 지정하는 네이티브 파일 대화 상자를 브라우저에 표시할 수 있습니다.
parent 는 웹 어셈블리용 Qt에서는 무시됩니다. 다른 플랫폼에서는 parent 을 전달하여 팝업을 다른 위젯의 자식으로 만듭니다. 플랫폼이 네이티브 파일 대화 상자를 지원하지 않는 경우, 함수는 QFileDialog 로 돌아갑니다.
이 함수는 비동기식이며 즉시 반환됩니다.
QByteArray imageData; // obtained from e.g. QImage::save() QFileDialog::saveFileContent(imageData, "myimage.png"); // with filename hint // OR QFileDialog::saveFileContent(imageData); // no filename hint
QByteArray QFileDialog::saveState() const
대화 상자의 레이아웃, 기록 및 현재 디렉터리 상태를 저장합니다.
일반적으로 QSettings 와 함께 사용되어 향후 세션의 크기를 기억합니다. 버전 번호가 데이터의 일부로 저장됩니다.
void QFileDialog::selectFile(const QString &filename)
파일 대화 상자에서 지정된 filename 을 선택합니다.
selectedFiles()도 참조하세요 .
void QFileDialog::selectMimeTypeFilter(const QString &filter)
현재 MIME 유형을 설정합니다 filter.
void QFileDialog::selectNameFilter(const QString &filter)
현재 파일 유형을 설정합니다 filter. 여러 필터를 세미콜론이나 공백으로 구분하여 filter 에 전달할 수 있습니다.
setNameFilter(), setNameFilters() 및 selectedNameFilter()도 참조하세요 .
void QFileDialog::selectUrl(const QUrl &url)
파일 대화 상자에서 지정된 url 을 선택합니다.
참고: 기본이 아닌 QFileDialog 은 로컬 파일만 지원합니다.
selectedUrls()도 참조하세요 .
QStringList QFileDialog::selectedFiles() const
대화 상자에서 선택한 파일의 절대 경로가 포함된 문자열 목록을 반환합니다. 파일이 선택되지 않았거나 모드가 ExistingFiles 또는 ExistingFile 이 아닌 경우 selectedFiles()에는 뷰포트의 현재 경로가 포함됩니다.
selectedNameFilter() 및 selectFile()도 참조하세요 .
QString QFileDialog::selectedMimeTypeFilter() const
사용자가 파일 대화 상자에서 선택한 파일의 모형을 반환합니다.
QString QFileDialog::selectedNameFilter() const
사용자가 파일 대화 상자에서 선택한 필터를 반환합니다.
selectedFiles()도 참조하세요 .
QList<QUrl> QFileDialog::selectedUrls() const
대화 상자에서 선택한 파일이 포함된 URL 목록을 반환합니다. 파일이 선택되지 않았거나 모드가 ExistingFiles 또는 ExistingFile 이 아닌 경우 selectedUrls()에는 뷰포트의 현재 경로가 포함됩니다.
selectedNameFilter() 및 selectUrl()도 참조하세요 .
void QFileDialog::setDirectory(const QString &directory)
파일 대화 상자의 현재 directory 로 설정합니다.
참고: iOS에서 directory 을 QStandardPaths::standardLocations(QStandardPaths::PicturesLocation).last()로 설정하면 기본 이미지 선택 대화 상자가 사용자의 사진 앨범에 액세스하는 데 사용됩니다. 반환된 파일 이름은 QFile 및 관련 API를 사용하여 로드할 수 있습니다. 이 기능을 사용하려면 프로젝트 파일에서 QMAKE_INFO_PLIST에 할당된 Info.plist에 NSPhotoLibraryUsageDescription
키가 포함되어 있어야 합니다. 이 키에 대한 자세한 내용은 Apple의 Info.plist 설명서를 참조하십시오. 이 기능은 Qt 5.5에 추가되었습니다.
directory()도 참조하십시오 .
void QFileDialog::setDirectory(const QDir &directory)
과부하가 걸린 기능입니다.
void QFileDialog::setDirectoryUrl(const QUrl &directory)
파일 대화 상자의 현재 directory URL을 설정합니다.
참고: 기본이 아닌 QFileDialog 은 로컬 파일만 지원합니다.
참고: Windows에서는 "컴퓨터" 또는 "네트워크"와 같은 가상 폴더 중 하나를 나타내는 URL을 전달할 수 있습니다. 이렇게 하려면 중괄호를 제거한 CLSID 값 뒤에 clsid
구문을 사용하여 QUrl 을 전달하면 됩니다. 예를 들어 clsid:374DE290-123F-4565-9164-39C4925E467B
URL은 다운로드 위치를 나타냅니다. 사용 가능한 값의 전체 목록은 알려진폴더ID에 대한 MSDN 설명서를 참조하세요. 이 기능은 Qt 5.5에 추가되었습니다.
directoryUrl() 및 QUuid 을참조하십시오 .
void QFileDialog::setFilter(QDir::Filters filters)
모델에서 사용하는 필터를 filters 로 설정합니다. 이 필터는 표시할 파일의 종류를 지정하는 데 사용됩니다.
filter()도 참조하세요 .
void QFileDialog::setHistory(const QStringList &paths)
지정된 paths 을 포함하도록 파일 로그의 검색 기록을 설정합니다.
history()도 참조하세요 .
void QFileDialog::setIconProvider(QAbstractFileIconProvider *provider)
파일 로그에서 사용하는 아이콘 공급자를 지정된 provider 으로 설정합니다.
iconProvider()도 참조하세요 .
void QFileDialog::setItemDelegate(QAbstractItemDelegate *delegate)
파일 대화 상자에서 뷰의 항목을 렌더링하는 데 사용되는 항목 델리게이트를 지정된 delegate 으로 설정합니다.
기존 델리게이트는 제거되지만 삭제되지는 않습니다. QFileDialog 은 delegate 에 대한 소유권을 갖지 않습니다.
경고: 뷰 간에 동일한 델리게이트 인스턴스를 공유해서는 안 됩니다. 그렇게 하면 특정 델리게이트에 연결된 각 보기가 closeEditor() 신호를 수신하고 이미 닫힌 편집기에 액세스, 수정 또는 닫으려고 시도할 수 있으므로 부정확하거나 직관적이지 않은 편집 동작이 발생할 수 있습니다.
사용된 모델은 QFileSystemModel 이며, Roles 열거형에 설명된 사용자 지정 항목 데이터 역할이 있습니다. 사용자 지정 아이콘만 원하는 경우 QFileIconProvider 을 사용할 수 있습니다.
itemDelegate(), setIconProvider() 및 QFileSystemModel 를참조하세요 .
void QFileDialog::setLabelText(QFileDialog::DialogLabel label, const QString &text)
파일 로그에 표시된 text 을 지정된 label 으로 설정합니다.
labelText()도 참조하세요 .
void QFileDialog::setMimeTypeFilters(const QStringList &filters)
파일 대화 상자에서 사용되는 filters 을 MIME 유형 목록에서 설정합니다.
setNameFilters()의 편의 메서드입니다. QMimeType 을 사용하여 각 MIME 유형에 정의된 글로브 패턴과 설명으로 이름 필터를 만듭니다.
"모든 파일(*)" 필터에는 모든 파일의 기본 MIME 유형인 application/octet-stream을 사용합니다.
setMimeTypeFilters를 호출하면 이전에 설정된 모든 이름 필터가 재정의되고 nameFilters()의 반환값이 변경됩니다.
QStringList mimeTypeFilters({"image/jpeg", // will show "JPEG image (*.jpeg *.jpg *.jpe) "image/png", // will show "PNG image (*.png)" "application/octet-stream" // will show "All files (*)" }); QFileDialog dialog(this); dialog.setMimeTypeFilters(mimeTypeFilters); dialog.exec();
mimeTypeFilters()도 참조하세요 .
void QFileDialog::setNameFilter(const QString &filter)
파일 대화 상자에 사용되는 필터를 지정된 filter 로 설정합니다.
filter 에 공백으로 구분된 하나 이상의 파일명-와일드카드 패턴이 포함된 괄호 쌍이 포함되어 있으면 괄호 안에 포함된 텍스트만 필터로 사용됩니다. 즉, 이러한 호출은 모두 동일합니다:
dialog.setNameFilter("All C++ files (*.cpp *.cc *.C *.cxx *.c++)"); dialog.setNameFilter("*.cpp *.cc *.C *.cxx *.c++");
참고: Android의 기본 파일 대화 상자에서는 지정된 이름 필터와 일치하는 마임 유형만 지원되므로 마임 유형이 사용됩니다.
setMimeTypeFilters() 및 setNameFilters()도 참조하세요 .
void QFileDialog::setNameFilters(const QStringList &filters)
파일 대화 상자에 사용되는 filters 을 설정합니다.
파일 확장자가 파일 유형을 결정한다는 과거의 가정이 모든 운영 체제에서 일관되지 않으므로 *.* 필터는 이식할 수 없습니다. 이름에 점이 없는 파일(예: Makefile
)도 있을 수 있습니다. 기본 Windows 파일 대화상자에서는 *.*가 이러한 파일과 일치하지만 다른 유형의 파일 대화상자에서는 일치하지 않을 수 있습니다. 따라서 파일을 선택하려면 *를 사용하는 것이 좋습니다.
const QStringList filters({"Image files (*.png *.xpm *.jpg)", "Text files (*.txt)", "Any files (*)" }); QFileDialog dialog(this); dialog.setNameFilters(filters); dialog.exec();
setMimeTypeFilters()는 각 파일 유형에 대해 가능한 모든 이름 필터를 제공한다는 장점이 있습니다. 예를 들어 JPEG 이미지에는 세 가지 확장자가 있는데, 애플리케이션에서 이러한 파일을 열 수 있는 경우 image/jpeg
mime 유형을 필터로 선택하면 모든 확장자를 열 수 있습니다.
nameFilters()도 참조하세요 .
void QFileDialog::setOption(QFileDialog::Option option, bool on = true)
on 이 참이면 지정된 option 을 활성화하도록 설정하고, 그렇지 않으면 지정된 option 을 지웁니다.
옵션(특히 DontUseNativeDialog 옵션)은 대화 상자 속성을 변경하거나 대화 상자를 표시하기 전에 설정해야 합니다.
대화 상자가 표시된 상태에서 옵션을 설정하면 옵션 및 플랫폼에 따라 대화 상자에 즉각적인 영향을 미치지 않을 수 있습니다.
다른 속성을 변경한 후에 옵션을 설정하면 해당 값이 적용되지 않을 수 있습니다.
options 및 testOption()도 참조하세요 .
void QFileDialog::setProxyModel(QAbstractProxyModel *proxyModel)
뷰의 모델을 지정된 proxyModel 으로 설정합니다. 열을 추가하거나 데이터를 필터링하거나 드라이브를 추가하는 등 기초 모델을 수정하려는 경우에 유용합니다.
기존 프록시 모델은 제거되지만 삭제되지는 않습니다. 파일 대화 상자에서 proxyModel.
proxyModel()도 참조하세요 .
void QFileDialog::setSidebarUrls(const QList<QUrl> &urls)
사이드바에 있는 urls 을 설정합니다.
예를 들어
QList<QUrl> urls; urls << QUrl::fromLocalFile("/Users/foo/Code/qt5") << QUrl::fromLocalFile(QStandardPaths::standardLocations(QStandardPaths::MusicLocation).first()); QFileDialog dialog; dialog.setSidebarUrls(urls); dialog.setFileMode(QFileDialog::AnyFile); if (dialog.exec()) { // ... }
그러면 파일 대화 상자가 다음과 같이 표시됩니다:
sidebarUrls()도 참조하세요 .
[override virtual]
void QFileDialog::setVisible(bool visible)
다시 구현합니다: QDialog::setVisible(bool 표시).
QList<QUrl> QFileDialog::sidebarUrls() const
현재 사이드바에 있는 URL 목록을 반환합니다.
setSidebarUrls()도 참조하세요 .
bool QFileDialog::testOption(QFileDialog::Option option) const
지정된 option 이 활성화된 경우 true
을 반환하고, 그렇지 않으면 false를 반환합니다.
options 및 setOption()도 참조하세요 .
[signal]
void QFileDialog::urlSelected(const QUrl &url)
선택 항목이 변경되고 대화 상자가 수락되면 (비어 있을 수 있는) 선택 항목과 함께 이 신호가 url 으로 전송됩니다.
currentUrlChanged() 및 QDialog::Accepted도 참조하세요 .
[signal]
void QFileDialog::urlsSelected(const QList<QUrl> &urls)
선택 항목이 변경되고 대화 상자가 수락되면 이 신호는 선택된 (비어 있을 수 있는) 목록 urls 과 함께 전송됩니다.
currentUrlChanged() 및 QDialog::Accepted도 참조하세요 .
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.