QWindowsMimeConverter Class
QWindowsMimeConverter 클래스는 공개 표준 MIME을 Windows 클립보드 형식으로 변환합니다. 더 보기...
| 헤더: | #include <QWindowsMimeConverter> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
| qmake: | QT += gui |
공개 함수
| QWindowsMimeConverter() | |
| virtual | ~QWindowsMimeConverter() |
| virtual bool | canConvertFromMime(const FORMATETC &formatetc, const QMimeData *mimeData) const = 0 |
| virtual bool | canConvertToMime(const QString &mimeType, IDataObject *pDataObj) const = 0 |
| virtual bool | convertFromMime(const FORMATETC &formatetc, const QMimeData *mimeData, STGMEDIUM *pmedium) const = 0 |
| virtual QVariant | convertToMime(const QString &mimeType, IDataObject *pDataObj, QMetaType preferredType) const = 0 |
| virtual QList<FORMATETC> | formatsForMime(const QString &mimeType, const QMimeData *mimeData) const = 0 |
| virtual QString | mimeForFormat(const FORMATETC &formatetc) const = 0 |
정적 공용 멤버
| int | registerMimeType(const QString &mimeType) |
상세 설명
Qt의 드래그 앤 드롭 및 클립보드 기능은 MIME 표준을 사용합니다. X11 환경에서는 이것이 Xdnd 프로토콜에 간단히 매핑되지만, Windows 환경에서는 일부 응용 프로그램이 클립보드 형식을 설명하기 위해 MIME 유형을 사용하는 반면, 다른 응용 프로그램은 임의의 비표준 명명 규칙이나 이름이 지정되지 않은 Windows의 내장 형식을 사용하기도 합니다.
Windows 클립보드와 MIME 형식 간의 변환을 제공하는 QWindowsMimeConverter의 하위 클래스를 인스턴스화하면, 독점적인 클립보드 형식을 MIME 형식으로 변환할 수 있습니다.
QGuiApplication 를 인스턴스화한 후, 변환기 구현체의 인스턴스를 생성하십시오:
int main(int argc, char **argv)
{
QGuiApplication app(argc, argv);
JsonMimeConverter jsonConverter;
}인스턴스를 소멸시키면 변환기가 등록 해제되고 변환 지원이 제거됩니다. 변환기 인스턴스를 힙에 할당하는 것도 유효합니다. Qt가 소유권을 가져가며, QGuiApplication 가 종료될 때 변환기 객체를 삭제합니다.
Qt는 다음 Windows 클립보드 형식에 대한 사전 정의된 지원을 제공합니다:
| Windows 형식 | 해당 MIME 유형 |
|---|---|
CF_UNICODETEXT | text/plain |
CF_TEXT | text/plain |
CF_DIB | image/xyz, 여기서 xyz 는 Qt image format |
CF_HDROP | text/uri-list |
CF_INETURL | text/uri-list |
CF_HTML | text/html |
이 클래스의 사용 예로는 Windows 메타파일 클립보드 형식(CF_METAFILEPICT)을 MIME 유형 image/x-wmf 로 변환하거나 그 반대로 변환하는 것이 있습니다. 이러한 변환은 단순히 헤더를 추가하거나 제거하는 것일 수도 있고, 데이터를 그대로 전달하는 것일 수도 있습니다. MIME 유형의 선택 및 정의에 대한 자세한 내용은 드래그 앤 드롭을 참조하십시오.
canConvertFromMime()을 사용하여 MIME 유형이 변환 가능한지 확인할 수 있으며, convertToMime() 및 convertFromMime()을 사용하여 변환을 수행할 수 있습니다.
멤버 함수 문서
QWindowsMimeConverter::QWindowsMimeConverter()
QWindowsMimeConverter 인스턴스를 생성합니다.
이 인스턴스는 자동으로 등록되며, 클립보드 또는 드래그 앤 드롭 작업 시 데이터를 변환하기 위해 호출됩니다.
QGuiApplication 가 생성된 후에 이 생성자를 호출하십시오.
[virtual noexcept] QWindowsMimeConverter::~QWindowsMimeConverter()
QWindowsMimeConverter 인스턴스를 생성합니다.
이 인스턴스는 자동으로 등록이 해제됩니다.
[pure virtual] bool QWindowsMimeConverter::canConvertFromMime(const FORMATETC &formatetc, const QMimeData *mimeData) const
변환기가 mimeData 에서 formatetc 에 지정된 형식으로 변환할 수 있는 경우 true 를 반환합니다.
모든 하위 클래스는 이 순수 가상 함수를 재구현해야 합니다.
[pure virtual] bool QWindowsMimeConverter::canConvertToMime(const QString &mimeType, IDataObject *pDataObj) const
변환기가 pDataObj 에 나열된 사용 가능한 형식 중 하나를 mimeType 로 변환할 수 있는 경우, true 를 반환합니다.
모든 하위 클래스는 이 순수 가상 함수를 재구현해야 합니다.
[pure virtual] bool QWindowsMimeConverter::convertFromMime(const FORMATETC &formatetc, const QMimeData *mimeData, STGMEDIUM *pmedium) const
mimeData 를 formatetc 에 명시된 형식으로 변환합니다. 변환된 데이터는 pmedium 구조체에 저장되어야 합니다.
변환이 성공하면 true를 반환합니다.
모든 하위 클래스는 이 순수 가상 함수를 재구현해야 합니다.
[pure virtual] QVariant QWindowsMimeConverter::convertToMime(const QString &mimeType, IDataObject *pDataObj, QMetaType preferredType) const
pDataObj 에서 가져온 mimeType 에 대한 변환된 데이터를 포함하는 ` QVariant `를 반환합니다. 가능한 경우, 불필요한 변환을 피하기 위해 ` QVariant `는 ` preferredType `이어야 합니다.
모든 하위 클래스는 이 순수 가상 함수를 재구현해야 합니다.
[pure virtual] QList<FORMATETC> QWindowsMimeConverter::formatsForMime(const QString &mimeType, const QMimeData *mimeData) const
mimeData 에서 mimeType 에 제공될 수 있는 다양한 윈도우 클립보드 형식을 나타내는 FORMATETC 구조체들의 QList 를 반환합니다.
모든 하위 클래스는 이 순수 가상 함수를 재구현해야 합니다.
[pure virtual] QString QWindowsMimeConverter::mimeForFormat(const FORMATETC &formatetc) const
formatetc 에 지정된 형식에서 생성될 MIME 유형을 반환하거나, 이 변환기가 formatetc 를 지원하지 않는 경우 빈 문자열을 반환합니다.
모든 하위 클래스는 이 순수 가상 함수를 재구현해야 합니다.
[static] int QWindowsMimeConverter::registerMimeType(const QString &mimeType)
Windows에서 MIME 유형 mimeType 을 등록하고, 해당 형식을 식별하는 ID 번호를 반환합니다.
MIME 유형 application/x-qt-windows-mime;value="WindowsType" 이 WindowsType 의 클립보드 형식으로 등록됩니다.
© 2026 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.