QAccessible Class
QAccessible 클래스는 접근성과 관련된 열거형 및 정적 함수를 제공합니다. 더 보기...
Header: | #include <QAccessible> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
- 상속된 멤버를 포함한 모든 멤버 목록
- QAccessible은 접근성 클래스의 일부입니다.
공용 유형
struct | State |
(since 6.8) enum class | AnnouncementPoliteness { Polite, Assertive } |
(since 6.8) enum class | Attribute { Custom, Level } |
enum | Event { AcceleratorChanged, ActionChanged, ActiveDescendantChanged, Alert, Announcement, …, VisibleDataChanged } |
Id | |
InterfaceFactory | |
enum | InterfaceType { TextInterface, ValueInterface, ActionInterface, TableInterface, TableCellInterface, …, AttributesInterface } |
flags | Relation |
enum | RelationFlag { Label, Labelled, Controller, Controlled, DescriptionFor, …, AllRelations } |
enum | Role { AlertMessage, Animation, Application, Assistant, Border, …, Window } |
enum | Text { Name, Description, Value, Help, Accelerator, …, Identifier } |
enum | TextBoundaryType { CharBoundary, WordBoundary, SentenceBoundary, ParagraphBoundary, LineBoundary, NoBoundary } |
정적 공용 멤버
QAccessibleInterface * | accessibleInterface(QAccessible::Id id) |
void | deleteAccessibleInterface(QAccessible::Id id) |
void | installFactory(QAccessible::InterfaceFactory factory) |
bool | isActive() |
QAccessibleInterface * | queryAccessibleInterface(QObject *object) |
QAccessible::Id | registerAccessibleInterface(QAccessibleInterface *iface) |
void | removeFactory(QAccessible::InterfaceFactory factory) |
void | setRootObject(QObject *object) |
QAccessible::Id | uniqueId(QAccessibleInterface *iface) |
void | updateAccessibility(QAccessibleEvent *event) |
상세 설명
이 클래스는 QWidget 응용 프로그램의 접근성 클래스의 일부입니다.
접근 가능한 응용 프로그램은 일반적인 방법으로 응용 프로그램을 사용할 수 없는 사람들이 사용할 수 있습니다.
이 클래스의 함수는 접근성 응용 프로그램(AT 서버라고도 함)과 스크린 리더 및 점자 디스플레이와 같은 접근성 도구(AT 클라이언트) 간의 통신에 사용됩니다. 클라이언트와 서버는 다음과 같은 방식으로 통신합니다:
- AT 서버는 updateAccessibility() 함수 호출을 통해 클라이언트에게 이벤트에 대해 알립니다.
- AT 클라이언트는 서버의 객체에 대한 정보를 요청합니다. QAccessibleInterface 클래스는 핵심 인터페이스이며, 이 정보를 순수 가상 API로 캡슐화합니다. 인터페이스의 구현은 queryAccessibleInterface() API를 통해 Qt에서 제공합니다.
서버와 클라이언트 간의 통신은 setRootObject() 함수에 의해 초기화됩니다. 함수 포인터를 설치하여 QAccessible의 정적 함수의 기본 동작을 대체하거나 확장할 수 있습니다.
Qt는 MSAA(Microsoft 액티브 접근성), macOS 접근성 및 Unix/X11 AT-SPI 표준을 지원합니다. 다른 백엔드는 QAccessibleBridge를 사용하여 지원할 수 있습니다.
Unix/X11 AT-SPI 구현에서는 두 가지 조건이 충족되면 애플리케이션에 액세스할 수 있습니다:
- org.a11y.Status.IsEnabled DBus 속성이 true입니다.
- org.a11y.Status.ScreenReaderEnabled DBus 속성이 true입니다.
DBus AT-SPI 속성을 설정하는 대신 QT_LINUX_ACCESSIBILITY_ALWAYS_ON 환경 변수를 설정하는 방법도 있습니다.
QAccessible의 정적 함수 외에도 Qt는 모든 위젯과 객체를 래핑하는 데 사용할 수 있는 하나의 일반 인터페이스( QAccessibleInterface)를 제공합니다(예: QPushButton). 이 단일 인터페이스는 보조 기술에 필요한 모든 메타데이터를 제공합니다. Qt는 내장 위젯을 위한 이 인터페이스의 구현을 플러그인으로 제공합니다.
사용자 정의 위젯을 개발할 때 QAccessibleInterface 의 사용자 정의 서브클래스를 만들어 플러그인으로 배포하거나 ( QAccessiblePlugin)를 사용하여 애플리케이션에 컴파일할 수 있습니다. 마찬가지로, Qt의 사전 정의된 접근성 지원은 플러그인(기본값)으로 빌드하거나 Qt 라이브러리에 직접 빌드할 수 있습니다. 플러그인 사용의 가장 큰 장점은 접근성 클래스가 실제로 사용되는 경우에만 메모리에 로드되므로 보조 기술이 사용되지 않는 일반적인 경우에는 속도가 느려지지 않는다는 것입니다.
Qt에는 또한 QAccessibleInterface 에서 상속되어 메타데이터의 최저 공통 분모(예: 위젯 지오메트리, 창 제목, 기본 도움말 텍스트)를 제공하는 두 개의 편의 클래스 QAccessibleObject 와 QAccessibleWidget 가 포함되어 있습니다. 사용자 정의 QObject 또는 QWidget 서브클래스를 래핑할 때 기본 클래스로 사용할 수 있습니다.
QAccessibleInterface 를참조하세요 .
멤버 유형 문서
[since 6.8]
enum class QAccessible::AnnouncementPoliteness
이 열거형은 QAccessibleAnnouncementEvent 에서 사용하는 알림의 우선 순위를 설명합니다.
QAccessible::AnouncementPoliteness::Polite 을 사용하면 보조 기술은 현재 문장을 말할 때나 사용자가 타이핑을 일시 중지할 때와 같이 다음 적절한 기회에 메시지를 알려야 합니다.
QAccessible::AnouncementPoliteness::Assertive 을 지정하는 경우 보조 기술은 사용자에게 즉시 알려야 합니다.
중단으로 인해 사용자가 혼란스러워하거나 현재 작업을 완료하지 못할 수 있으므로 반드시 중단해야 하는 경우가 아니라면 QAccessible::AnouncementPoliteness::Assertive 을 사용해서는 안 됩니다.
상수 | 값 | 설명 |
---|---|---|
QAccessible::AnnouncementPoliteness::Polite | 0 | 이 공지사항의 우선순위는 보통입니다. |
QAccessible::AnnouncementPoliteness::Assertive | 1 | 알림의 우선순위가 높으므로 사용자의 현재 작업을 중단하는 한이 있더라도 사용자에게 즉시 알려야 합니다. |
이 열거형은 Qt 6.8에 도입되었습니다.
QAccessibleAnnouncementEvent 를참조하세요 .
[since 6.8]
enum class QAccessible::Attribute
이 열거형은 QAccessibleAttributesInterface 에서 사용하는 다양한 유형의 속성을 설명합니다.
이러한 속성은 ARIA, AT-SPI2, IAccessible, UIA 및 NSAccessibility에 있는 속성/(객체) 속성의 개념과 유사하며 해당하는 경우 해당 플랫폼에 매핑됩니다.
각 속성은 키-값 쌍으로 처리되며, 이 열거형의 값이 키로 사용됩니다.
속성 값은 QVariant. QVariant 에 저장된 값의 유형은 고정되어 있으며 각 속성 유형에 대해 아래에 명시되어 있습니다.
상수 | 값 | 설명 |
---|---|---|
QAccessible::Attribute::Custom | 0 | 값 유형: QHash<QString, QString> Custom 속성은 그 자체가 키-값 쌍을 나타내는 데 사용되는 QHash 이므로 한 번에 여러 속성을 효과적으로 나타낼 수 있다는 점에서 특별합니다. 속성에 대한 사용자 정의 키-값 쌍을 지원하는 플랫폼의 경우 Custom 속성에 설정된 속성은 플랫폼별 속성에 대한 번역을 적용하지 않고 플랫폼 계층에 브리지됩니다. 일반적으로 더 강력하게 입력된 다른 어트리뷰트를 사용해야 합니다. 이 속성은 예를 들어 특정 기능에 대한 공식적인 새 열거형 값을 공식적으로 추가하기 전에 프로토타이핑에 사용할 수 있습니다. |
QAccessible::Attribute::Level | 1 | 값 유형: int 구조 내 요소의 계층적 수준(예: 제목의 헤딩 수준)을 정의합니다. 이 속성은 개념적으로 ARIA의 "aria-level" 속성과 일치합니다. |
이 열거형은 Qt 6.8에 도입되었습니다.
QAccessibleAttributesInterface 를참조하십시오 .
enum QAccessible::Event
이 열거형 유형은 액세스 가능한 이벤트 유형을 정의합니다.
Constant | 값 | 설명 |
---|---|---|
QAccessible::AcceleratorChanged | 0x80C0 | 액션의 키보드 가속기가 변경되었습니다. |
QAccessible::ActionChanged | 0x0101 | 동작이 변경되었습니다. |
QAccessible::ActiveDescendantChanged | 0x0102 | |
QAccessible::Alert | 0x0002 | 시스템 알림(예: QMessageBox)의 메시지입니다. |
QAccessible::Announcement (since Qt 6.8) | 0x80D0 | 메시지 알림이 요청되었습니다. |
QAccessible::AttributeChanged | 0x0103 | |
QAccessible::ContextHelpEnd | 0x000D | 개체에 대한 컨텍스트 도움말(QWhatsThis)이 완료되었습니다. |
QAccessible::ContextHelpStart | 0x000C | 객체에 대한 컨텍스트 도움말(QWhatsThis)이 시작됩니다. |
QAccessible::DefaultActionChanged | 0x80B0 | 접근 가능한 개체에 대한 기본 QAccessible::Action이 변경되었습니다. |
QAccessible::DescriptionChanged | 0x800D | 개체의 QAccessible::Description 가 변경되었습니다. |
QAccessible::DialogEnd | 0x0011 | 대화 상자(QDialog)가 숨겨졌습니다. |
QAccessible::DialogStart | 0x0010 | 대화 상자(QDialog)가 표시되도록 설정되었습니다. |
QAccessible::DocumentContentChanged | 0x0104 | 텍스트 문서의 콘텐츠가 변경되었습니다. |
QAccessible::DocumentLoadComplete | 0x0105 | 문서가 로드되었습니다. |
QAccessible::DocumentLoadStopped | 0x0106 | 문서 로드가 중지되었습니다. |
QAccessible::DocumentReload | 0x0107 | 문서 다시 로드가 시작되었습니다. |
QAccessible::DragDropEnd | 0x000F | 끌어서 놓기 작업이 곧 완료됩니다. |
QAccessible::DragDropStart | 0x000E | 끌어서 놓기 작업이 곧 시작됩니다. |
QAccessible::Focus | 0x8005 | 개체가 키보드 포커스를 얻었습니다. |
QAccessible::ForegroundChanged | 0x0003 | 창이 활성화되었습니다(즉, 새 창이 바탕화면에서 포커스를 얻었습니다). |
QAccessible::HelpChanged | 0x80A0 | 개체의 QAccessible::Help 텍스트 속성이 변경되었습니다. |
QAccessible::HyperlinkEndIndexChanged | 0x0108 | 하이퍼텍스트 링크의 표시 텍스트 끝 위치가 변경되었습니다. |
QAccessible::HyperlinkNumberOfAnchorsChanged | 0x0109 | 하이퍼텍스트 링크의 앵커 수가 변경되었습니다(표시 텍스트가 두 개 이상의 링크를 제공하기 위해 분할되었기 때문일 수 있음). |
QAccessible::HyperlinkSelectedLinkChanged | 0x010A | 선택한 하이퍼텍스트 링크의 링크가 변경되었습니다. |
QAccessible::HyperlinkStartIndexChanged | 0x010D | 하이퍼텍스트 링크의 표시 텍스트 시작 위치가 변경되었습니다. |
QAccessible::HypertextChanged | 0x010E | 하이퍼텍스트 링크의 표시 텍스트가 변경되었습니다. |
QAccessible::HypertextLinkActivated | 0x010B | 하이퍼텍스트 링크가 클릭 또는 키 누름을 통해 활성화되었습니다. |
QAccessible::HypertextLinkSelected | 0x010C | 하이퍼텍스트 링크가 선택되었습니다. |
QAccessible::HypertextNLinksChanged | 0x010F | |
QAccessible::IdentifierChanged (since Qt 6.8) | 0x80E0 | 객체의 식별자가 변경되었습니다. |
QAccessible::LocationChanged | 0x800B | 화면에서 객체의 위치가 변경되었습니다. |
QAccessible::MenuCommand | 0x0018 | 메뉴 항목이 트리거되었습니다. |
QAccessible::MenuEnd | 0x0005 | 메뉴가 닫혔습니다 (Qt는 모든 메뉴에 PopupMenuEnd를 사용합니다). |
QAccessible::MenuStart | 0x0004 | 메뉴 바에서 메뉴가 열렸습니다 (Qt는 모든 메뉴에 PopupMenuStart를 사용합니다). |
QAccessible::NameChanged | 0x800C | 개체의 QAccessible::Name 속성이 변경되었습니다. |
QAccessible::ObjectAttributeChanged | 0x0110 | |
QAccessible::ObjectCreated | 0x8000 | 새 객체가 생성되었습니다. |
QAccessible::ObjectDestroyed | 0x8001 | 개체가 삭제되었습니다. |
QAccessible::ObjectHide | 0x8003 | 개체가 숨겨집니다(예: QWidget::hide()). 숨겨진 객체에 있는 모든 자식은 이 이벤트를 보내지 않습니다. 객체가 다른 객체에 의해 가려져 숨겨져 있는 경우에는 이 이벤트가 전송되지 않습니다. |
QAccessible::ObjectReorder | 0x8004 | 레이아웃 또는 항목 보기가 객체를 추가, 제거 또는 이동한 경우(Qt는 이 이벤트를 사용하지 않음). |
QAccessible::ObjectShow | 0x8002 | 개체가 표시된 경우(예: QWidget::show()). |
QAccessible::PageChanged | 0x0111 | |
QAccessible::ParentChanged | 0x800F | 객체의 부모 객체가 변경되었습니다. |
QAccessible::PopupMenuEnd | 0x0007 | 팝업 메뉴가 닫혔습니다. |
QAccessible::PopupMenuStart | 0x0006 | 팝업 메뉴가 열렸습니다. |
QAccessible::ScrollingEnd | 0x0013 | 스크롤 막대 스크롤 작업이 종료되었습니다(마우스가 슬라이더 핸들에서 손을 뗐습니다). |
QAccessible::ScrollingStart | 0x0012 | 스크롤 막대 스크롤 작업이 시작되려고 합니다(예: 마우스가 슬라이더 핸들을 눌렀기 때문일 수 있음). |
QAccessible::SectionChanged | 0x0112 | |
QAccessible::SelectionAdd | 0x8007 | 항목 보기의 선택 항목에 항목이 추가되었습니다. |
QAccessible::SelectionRemove | 0x8008 | 항목 보기 선택 항목에서 항목이 제거되었습니다. |
QAccessible::Selection | 0x8006 | 메뉴 또는 항목 보기에서 선택 항목이 변경되었습니다. |
QAccessible::SelectionWithin | 0x8009 | 항목 보기에서 선택 항목에 여러 가지 변경 사항이 발생했습니다. |
QAccessible::SoundPlayed | 0x0001 | 객체에서 사운드가 재생되었습니다. |
QAccessible::TableCaptionChanged | 0x0113 | 표 캡션이 변경되었습니다. |
QAccessible::TableColumnDescriptionChanged | 0x0114 | 일반적으로 열 머리글에 있는 표 열의 설명이 변경되었습니다. |
QAccessible::TableColumnHeaderChanged | 0x0115 | 표 열 머리글이 변경되었습니다. |
QAccessible::TableRowDescriptionChanged | 0x0117 | 일반적으로 행의 머리글에 있는 표 행의 설명이 변경되었습니다. |
QAccessible::TableRowHeaderChanged | 0x0118 | 표 행 머리글이 변경되었습니다. |
QAccessible::TableSummaryChanged | 0x0119 | 표의 요약이 변경되었습니다. |
QAccessible::TextColumnChanged | 0x011D | 텍스트 열이 변경되었습니다. |
QAccessible::VisibleDataChanged | 0x0122 |
이 열거형 열거형의 값은 IAccessible2 및 MSAA 사양에 정의된 값과 동일하게 정의됩니다.
QAccessible::Id
서명되지 않은 것과 동의어로, QAccessibleInterface 캐시에서 사용합니다.
QAccessible::InterfaceFactory
이것은 다음 서명을 가진 함수에 대한 포인터에 대한 타입 정의입니다:
typedef QAccessibleInterface *myFactoryFunction(const QString &key, QObject *);
이 함수는 QString 및 QObject 포인터를 받는데, 여기서 QString 는 인터페이스를 식별하는 키입니다. QObject 은 QAccessibleInterface 에 전달하여 참조를 보유할 수 있도록 하는 데 사용됩니다.
키와 QObject 에 해당하는 QAccessibleInterface 이 없으면 nullptr
이 반환됩니다.
설치된 팩토리는 인터페이스를 제공할 때까지 쿼리 접근성 인터페이스()에 의해 호출됩니다.
enum QAccessible::InterfaceType
QAccessibleInterface 는 여러 하위 인터페이스를 지원합니다. 일부 객체에 대한 자세한 정보를 제공하려면 해당 객체의 접근 가능한 표현은 이러한 인터페이스 중 하나 이상을 구현해야 합니다.
참고: 이러한 인터페이스 중 하나를 서브클래싱할 때는 QAccessibleInterface::interface_cast()를 구현해야 합니다.
상수 | 값 | 설명 |
---|---|---|
QAccessible::TextInterface | 0 | 선택을 지원하거나 한 줄 이상인 텍스트의 경우. 단순한 레이블은 이 인터페이스를 구현할 필요가 없습니다. |
QAccessible::ValueInterface | 2 | 슬라이더나 스크롤 막대와 같이 값을 조작하는 데 사용되는 객체의 경우. |
QAccessible::ActionInterface | 3 | 사용자가 동작을 트리거할 수 있는 대화형 개체의 경우. 기본적으로 마우스 상호작용을 허용하는 모든 것이 해당됩니다. |
QAccessible::TableInterface | 5 | 목록, 표 및 트리의 경우. |
QAccessible::TableCellInterface | 6 | TableInterface 객체의 셀. |
QAccessible::HyperlinkInterface | 7 | 하이퍼링크 노드(일반적으로 텍스트 노드의 자식으로 임베드됨) |
QAccessible::SelectionInterface (since Qt 6.5) | 8 | 자식 객체 선택을 지원하는 비텍스트 객체의 경우. |
QAccessible::AttributesInterface (since Qt 6.8) | 9 | 객체별 속성을 지원하는 객체의 경우. |
QAccessibleInterface::interface_cast(), QAccessibleTextInterface, QAccessibleValueInterface, QAccessibleActionInterface, QAccessibleTableInterface, QAccessibleTableCellInterface, QAccessibleSelectionInterface, QAccessibleAttributesInterface 를참조하세요 .
열거형 QAccessible::RelationFlag
플래그 QAccessible::Relation
이 열거형 유형은 액세스 가능한 두 객체 간의 관계를 나타내기 위해 결합할 수 있는 비트 플래그를 정의합니다. 각 객체에 대한 관계와 함께 호출 객체의 모든 관련 인터페이스 목록을 반환하는 relations() 함수에서 사용됩니다.
목록의 각 항목은 second
멤버가 first
멤버로 표시되는 returned
객체와 origin
(호출자) 인터페이스/객체 간의 관계 유형을 저장하는 QPair 입니다.
아래 표에서 returned
객체는 반환된 목록의 객체를 참조하고 origin
객체는 호출 인터페이스가 나타내는 객체입니다.
상수 | 값 | 설명 |
---|---|---|
QAccessible::Label | 0x00000001 | returned 객체는 origin 객체에 대한 레이블입니다. |
QAccessible::Labelled | 0x00000002 | returned 객체는 origin 객체에 의해 레이블이 지정됩니다. |
QAccessible::Controller | 0x00000004 | returned 객체는 origin 객체를 제어합니다. |
QAccessible::Controlled | 0x00000008 | returned 객체는 origin 객체에 의해 제어됩니다. |
QAccessible::DescriptionFor (since Qt 6.6) | 0x00000010 | returned 객체는 origin 객체에 대한 설명을 제공합니다. |
QAccessible::Described (since Qt 6.6) | 0x00000020 | returned 객체는 origin 객체에 의해 설명됩니다. |
QAccessible::FlowsFrom (since Qt 6.6) | 0x00000040 | 콘텐츠는 returned 객체에서 origin 객체로 논리적으로 흐릅니다. |
QAccessible::FlowsTo (since Qt 6.6) | 0x00000080 | 콘텐츠는 origin 객체에서 returned 객체로 논리적으로 흐릅니다. |
QAccessible::AllRelations | 0xffffffff | 모든 관계에 대한 정보에 관심이 있음을 지정하는 마스크로 사용됩니다. |
relations()의 구현은 이러한 플래그의 조합을 반환합니다. 일부 값은 상호 배타적입니다.
Relation 유형은 QFlags<RelationFlag>에 대한 typedef입니다. RelationFlag 값의 OR 조합을 저장합니다.
enum QAccessible::Role
이 열거형은 접근 가능한 객체의 역할을 정의합니다. 역할은 다음과 같습니다:
상수 | 값 | 설명 |
---|---|---|
QAccessible::AlertMessage | 0x00000008 | 사용자에게 경고하는 데 사용되는 객체입니다. |
QAccessible::Animation | 0x00000036 | 애니메이션을 표시하는 객체입니다. |
QAccessible::Application | 0x0000000E | 애플리케이션의 기본 창입니다. |
QAccessible::Assistant | 0x00000020 | 대화형 도움말을 제공하는 객체입니다. |
QAccessible::Border | 0x00000013 | 테두리를 나타내는 객체입니다. |
QAccessible::ButtonDropDown | 0x00000038 | 항목 목록을 드롭다운하는 버튼입니다. |
QAccessible::ButtonDropGrid | 0x0000003A | 그리드를 드롭다운하는 버튼입니다. |
QAccessible::ButtonMenu | 0x00000039 | 메뉴를 드롭다운하는 버튼입니다. |
QAccessible::Canvas | 0x00000035 | 사용자가 상호 작용할 수 있는 그래픽을 표시하는 객체입니다. |
QAccessible::Caret | 0x00000007 | 시스템 캐럿(텍스트 커서)을 나타내는 객체입니다. |
QAccessible::Cell | 0x0000001D | 표의 셀입니다. |
QAccessible::Chart | 0x00000011 | 데이터의 그래픽 표현을 표시하는 객체입니다. |
QAccessible::CheckBox | 0x0000002C | 선택하거나 선택 취소할 수 있는 옵션을 나타내는 객체입니다. 일부 옵션은 '혼합' 상태(예: 선택되지 않거나 선택되지 않은 상태)를 제공합니다. |
QAccessible::Client | 0x0000000A | 창에서 클라이언트 영역. |
QAccessible::Clock | 0x0000003D | 시간을 표시하는 시계입니다. |
QAccessible::ColorChooser | 0x404 | 사용자가 색상을 선택할 수 있는 대화상자입니다. |
QAccessible::Column | 0x0000001B | 일반적으로 표 내의 셀 열입니다. |
QAccessible::ColumnHeader | 0x00000019 | 데이터 열의 헤더입니다. |
QAccessible::ComboBox | 0x0000002E | 사용자가 선택할 수 있는 선택 목록입니다. |
QAccessible::ComplementaryContent | 0x42C | 문서 또는 웹 페이지의 주요 콘텐츠를 보완하는 부분으로, 일반적으로 랜드마크입니다(WAI-ARIA 참조). |
QAccessible::Cursor | 0x00000006 | 마우스 커서를 나타내는 개체입니다. |
QAccessible::Desktop | 0x00000082 | 바탕 화면 또는 작업 공간을 나타내는 개체입니다. |
QAccessible::Dial | 0x00000031 | 다이얼 또는 노브를 나타내는 개체입니다. |
QAccessible::Dialog | 0x00000012 | 대화 상자. |
QAccessible::Document | 0x0000000F | 문서(예: 오피스 애플리케이션)입니다. |
QAccessible::EditableText | 0x0000002A | 줄 또는 텍스트 수정과 같은 편집 가능한 텍스트. |
QAccessible::Equation | 0x00000037 | 수학 방정식을 나타내는 개체. |
QAccessible::Footer | 0x40E | 페이지의 바닥글(일반적으로 문서에서). |
QAccessible::Form | 0x410 | 컨트롤이 포함된 웹 양식. |
QAccessible::Graphic | 0x00000028 | 그래픽 또는 그림(예: 아이콘). |
QAccessible::Grip | 0x00000004 | 사용자가 드래그하여 위젯의 크기를 변경할 수 있는 그립. |
QAccessible::Grouping | 0x00000014 | 다른 객체의 논리적 그룹을 나타내는 객체. |
QAccessible::Heading | 0x414 | 문서의 제목입니다. |
QAccessible::HelpBalloon | 0x0000001F | 별도의 짧은 창에 도움말을 표시하는 개체입니다. |
QAccessible::HotkeyField | 0x00000032 | 사용자가 키 시퀀스를 입력할 수 있는 단축키 필드입니다. |
QAccessible::Indicator | 0x00000027 | 현재 값 또는 항목을 나타내는 표시기입니다. |
QAccessible::LayeredPane | 0x00000080 | 스택과 같이 계층화된 하위 항목을 포함할 수 있는 개체입니다. |
QAccessible::Link | 0x0000001E | 다른 항목에 대한 링크. |
QAccessible::List | 0x00000021 | 사용자가 하나 이상의 항목을 선택할 수 있는 항목 목록입니다. |
QAccessible::ListItem | 0x00000022 | 항목 목록의 항목입니다. |
QAccessible::MenuBar | 0x00000002 | 사용자가 메뉴를 여는 메뉴 모음입니다. |
QAccessible::MenuItem | 0x0000000C | 메뉴 또는 메뉴 표시줄의 항목입니다. |
QAccessible::NoRole | 0x00000000 | 객체에는 역할이 없습니다. 일반적으로 잘못된 객체를 나타냅니다. |
QAccessible::Note | 0x41B | 리소스의 주요 콘텐츠에 대한 괄호 또는 부수적인 콘텐츠가 있는 섹션입니다. |
QAccessible::Notification | 0x00000086 | 알림을 나타내는 객체(예: 시스템 트레이)입니다. 이 역할은 Linux에서만 영향을 줍니다. |
QAccessible::PageTab | 0x00000025 | 사용자가 대화 상자에서 다른 페이지로 전환하기 위해 선택할 수 있는 페이지 탭입니다. |
QAccessible::PageTabList | 0x0000003C | 페이지 탭의 목록입니다. |
QAccessible::Paragraph | 0x00000083 | 텍스트 단락(일반적으로 문서에서 볼 수 있음). |
QAccessible::Pane | 0x00000010 | 일반 컨테이너. |
QAccessible::PopupMenu | 0x0000000B | 사용자가 작업을 수행하기 위해 선택할 수 있는 옵션을 나열하는 메뉴입니다. |
QAccessible::ProgressBar | 0x00000030 | 개체는 진행 중인 작업의 진행률을 표시합니다. |
QAccessible::PropertyPage | 0x00000026 | 사용자가 옵션 및 설정을 변경할 수 있는 속성 페이지입니다. |
QAccessible::Button | 0x0000002B | 버튼. |
QAccessible::RadioButton | 0x0000002D | 다른 옵션과 상호 배타적인 옵션을 나타내는 개체입니다. |
QAccessible::Row | 0x0000001C | 일반적으로 표 내의 셀 행입니다. |
QAccessible::RowHeader | 0x0000001A | 데이터 행의 헤더입니다. |
QAccessible::ScrollBar | 0x00000003 | 사용자가 표시되는 영역을 스크롤할 수 있는 스크롤 막대입니다. |
QAccessible::Section | 0x00000085 | 섹션(문서 내). |
QAccessible::Separator | 0x00000015 | 공간을 논리적인 영역으로 구분하는 구분 기호입니다. |
QAccessible::Slider | 0x00000033 | 사용자가 주어진 범위 내에서 값을 선택할 수 있는 슬라이더입니다. |
QAccessible::Sound | 0x00000005 | 소리를 나타내는 개체입니다. |
QAccessible::SpinBox | 0x00000034 | 사용자가 주어진 범위 내에서 값을 입력할 수 있는 회전 상자 위젯입니다. |
QAccessible::Splitter | 0x0000003E | 자식 위젯 사이에 사용 가능한 공간을 분배하는 분할기. |
QAccessible::StaticText | 0x00000029 | 다른 위젯의 레이블과 같은 정적 텍스트. |
QAccessible::StatusBar | 0x00000017 | 상태 표시줄. |
QAccessible::Table | 0x00000018 | 행과 열의 그리드로 데이터를 나타내는 표입니다. |
QAccessible::Terminal | 0x00000081 | 터미널 또는 명령줄 인터페이스. |
QAccessible::TitleBar | 0x00000001 | 창의 제목 표시줄 캡션. |
QAccessible::ToolBar | 0x00000016 | 사용자가 자주 액세스하는 위젯을 그룹화하는 도구 모음입니다. |
QAccessible::ToolTip | 0x0000000D | 다른 개체에 대한 정보를 제공하는 도구 설명. |
QAccessible::Tree | 0x00000023 | 트리 구조의 항목 목록입니다. |
QAccessible::TreeItem | 0x00000024 | 트리 구조의 항목입니다. |
QAccessible::UserRole | 0x0000ffff | 사용자 정의 역할에 사용되는 첫 번째 값입니다. |
QAccessible::WebDocument | 0x00000084 | 일반적으로 브라우저에 있는 HTML 문서. |
QAccessible::Whitespace | 0x0000003B | 다른 객체 사이의 빈 공간입니다. |
QAccessible::Window | 0x00000009 | 최상위 수준 창입니다. |
enum QAccessible::Text
이 열거형은 액세스 가능한 객체가 반환하는 문자열 정보를 지정합니다.
Constant | 값 | 설명 |
---|---|---|
QAccessible::Name | 0 | 객체의 이름입니다. 접근 가능한 클라이언트에서 식별자 또는 간단한 설명으로 사용할 수 있습니다. |
QAccessible::Description | 1 | 객체를 설명하는 짧은 텍스트입니다. |
QAccessible::Value | 2 | 객체의 값입니다. |
QAccessible::Help | 3 | 객체 사용 방법에 대한 정보를 제공하는 긴 텍스트입니다. |
QAccessible::Accelerator | 4 | 개체의 기본 동작을 실행하는 키보드 단축키입니다. |
QAccessible::UserText | 0x0000ffff | 사용자 정의 텍스트에 사용할 첫 번째 값입니다. |
QAccessible::Identifier (since Qt 6.8) | 6 | UI 테스트 등을 위한 객체의 식별자입니다. |
enum QAccessible::TextBoundaryType
이 열거형은 다양한 유형의 텍스트 경계를 설명합니다. IAccessible2 API를 따르며 QAccessibleTextInterface 에서 사용됩니다.
Constant | 값 | 설명 |
---|---|---|
QAccessible::CharBoundary | 0 | 개별 문자를 경계로 사용합니다. |
QAccessible::WordBoundary | 1 | 단어를 경계로 사용합니다. |
QAccessible::SentenceBoundary | 2 | 문장을 경계로 사용합니다. |
QAccessible::ParagraphBoundary | 3 | 단락을 경계로 사용합니다. |
QAccessible::LineBoundary | 4 | 줄 바꿈을 경계로 사용합니다. |
QAccessible::NoBoundary | 5 | 경계 없음(전체 텍스트 사용). |
QAccessibleTextInterface 를참조하십시오 .
멤버 함수 문서
[static]
QAccessibleInterface *QAccessible::accessibleInterface(QAccessible::Id id)
id 에 속하는 QAccessibleInterface 을 반환합니다.
ID가 유효하지 않은 경우 nullptr
를 반환합니다.
[static]
void QAccessible::deleteAccessibleInterface(QAccessible::Id id)
이 id 에 속한 인터페이스를 캐시에서 제거하고 삭제합니다. ID가 유효하지 않게 되어 캐시에서 재사용될 수 있습니다.
[static]
void QAccessible::installFactory(QAccessible::InterfaceFactory factory)
InterfaceFactory factory 을 설치합니다. 마지막으로 추가된 팩토리는 queryAccessibleInterface()에서 사용하는 첫 번째 팩토리입니다.
[static]
bool QAccessible::isActive()
플랫폼에서 접근성 정보를 요청한 경우 true
을 반환합니다.
이 함수는 화면 리더와 같은 도구가 접근성 프레임워크에 액세스할 때까지 false를 반환합니다. 접근성이 활성화되지 않은 경우에도 QAccessible::queryAccessibleInterface()를 사용할 수 있습니다. 하지만 플랫폼에 알림이 전송되지 않습니다.
불필요한 경우 updateAccessibility()를 통해 알림을 보내지 않으려면 이 함수를 사용하는 것이 좋습니다.
[static]
QAccessibleInterface *QAccessible::queryAccessibleInterface(QObject *object)
주어진 object 에 대해 QAccessibleInterface 구현이 존재하면 이 함수는 구현에 대한 포인터를 반환하고, 그렇지 않으면 nullptr
를 반환합니다.
이 함수는 object 클래스에 대한 인터페이스를 제공하는 함수를 찾을 때까지 설치된 모든 팩토리 함수(가장 최근에 설치된 것부터 가장 최근에 설치된 것까지)를 호출합니다. 클래스에 대한 접근성 구현을 제공하는 팩토리가 없는 경우 이 함수는 설치된 접근성 플러그인을 로드하고 플러그인 중 해당 구현을 제공할 수 있는 플러그인이 있는지 테스트합니다.
객체의 클래스에 대한 구현을 사용할 수 없는 경우 함수는 위의 전략을 사용하여 객체의 부모 클래스에 대한 구현을 찾으려고 시도합니다.
모든 인터페이스는 내부 캐시에 의해 관리되며 삭제해서는 안 됩니다.
[static]
QAccessible::Id QAccessible::registerAccessibleInterface(QAccessibleInterface *iface)
이 함수를 호출하여 수동으로 생성한 인터페이스가 제대로 메모리 관리되는지 확인합니다.
인터페이스당 정확히 한 번만 호출해야 합니다 iface. 이 함수는 queryAccessibleInterface 을 호출할 때 암시적으로 호출되며, 이 함수를 호출하는 것은 "new" 연산자를 사용하여 QAccessibleInterfaces를 인스턴스화할 때만 필요합니다. 가능하면 기본 함수를 사용하고 queryAccessibleInterface()가 이 작업을 처리하도록 하는 것이 좋습니다.
QAccessibleInterface::child() 함수를 재구현하고 생성 후 자식을 반환해야 하는 경우 이 함수를 호출해야 합니다.
[static]
void QAccessible::removeFactory(QAccessible::InterfaceFactory factory)
설치된 인터페이스팩토리 목록에서 factory 을 제거합니다.
[static]
void QAccessible::setRootObject(QObject *object)
이 애플리케이션의 접근 가능한 객체의 루트 객체를 object 로 설정합니다. 다른 모든 접근 가능한 객체는 루트 객체에서 객체 탐색을 사용하여 도달할 수 있습니다.
일반적으로 이 함수는 이벤트 루프가 QApplication::exec()에 입력되기 직전에 QApplication 객체를 루트 객체로 설정하므로 이 함수를 호출할 필요가 없습니다.
함수 호출을 사용자 정의 핸들러 함수로 리디렉션하려면 QAccessible::installRootObjectHandler()를 사용하십시오.
queryAccessibleInterface()도 참조하세요 .
[static]
QAccessible::Id QAccessible::uniqueId(QAccessibleInterface *iface)
QAccessibleInterface iface 에 대한 고유 ID를 반환합니다.
[static]
void QAccessible::updateAccessibility(QAccessibleEvent *event)
접근성 클라이언트와 관련이 있을 수 있는 변경 사항을 알립니다.
event 변경 사항에 대한 세부 정보를 제공합니다. 여기에는 변경의 출처와 변경의 성격이 포함됩니다. event 에는 의미 있는 알림을 제공할 수 있는 충분한 정보가 포함되어야 합니다.
예를 들어 ValueChange
유형은 슬라이더의 위치가 변경되었음을 나타냅니다.
접근성 개체 또는 하위 요소 중 하나의 상태가 프로그래밍 방식으로(예: QLabel::setText() 호출) 또는 사용자 상호 작용으로 변경될 때마다 이 함수를 호출하세요.
이 이벤트를 수신하는 접근성 도구가 없는 경우 이 함수를 호출해도 성능 저하가 적지만, 호출 매개변수를 결정하는 데 비용이 많이 드는 경우 QAccessible::isActive()를 테스트하여 불필요한 계산을 피할 수 있습니다.
© 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.