반응형

javax.accessibility.AccessibleRelationSet 클래스는 AccessibleRelationSet 인터페이스의 구현체로, 특정 accessible 객체와 다른 accessible 객체들 사이의 관계를 나타냅니다
AccessibleRelationSet 객체는 AccessibleContext 객체에 의해 반환됩니다.

AccessibleRelationSet 클래스는 다음과 같은 메서드를 가지고 있습니다.

- `add(AccessibleRelation relation)`: AccessibleRelationSet에 지정된 AccessibleRelation을 추가합니다.
- `addAll(AccessibleRelation[] relations)`: AccessibleRelationSet에 지정된 AccessibleRelation 배열을 추가합니다.
- `clear()`: AccessibleRelationSet에서 모든 AccessibleRelation을 제거합니다.
- `contains(AccessibleRelation relation)`: AccessibleRelationSet이 지정된 AccessibleRelation을 포함하는지 여부를 반환합니다.
- `toArray()`: AccessibleRelationSet의 AccessibleRelation 배열을 반환합니다.

다음은 AccessibleRelationSet 클래스의 예제 코드입니다.

import javax.accessibility.*;

public class AccessibleRelationSetExample {
    public static void main(String[] args) {
        AccessibleRelationSet set = new AccessibleRelationSet();

        AccessibleRelation relation1 = new AccessibleRelation(
            AccessibleRelation.LABEL_FOR, new Object[]{new Integer(1), new Integer(2)});
        set.add(relation1);

        AccessibleRelation relation2 = new AccessibleRelation(
            AccessibleRelation.CONTROLLER_FOR, new Object[]{new Integer(3)});
        set.add(relation2);

        AccessibleRelation[] relations = set.toArray();
        for (AccessibleRelation relation : relations) {
            System.out.println(relation);
        }
    }
}



위 코드에서는 AccessibleRelationSet 객체를 만들고, 두 개의 AccessibleRelation 객체를 추가합니다
그런 다음 `toArray()` 메서드를 사용하여 AccessibleRelationSet의 내용을 AccessibleRelation 배열로 변환합니다
마지막으로 for-each 반복문을 사용하여 각 AccessibleRelation 객체를 출력합니다.

[labelFor=1,2]
[controllerFor=3]


위의 코드에서 생성된 AccessibleRelationSet 객체는 "labelFor" 관계를 가지는 객체들의 ID가 "1"과 "2"임을 나타내고, "controllerFor" 관계를 가지는 객체의 ID가 "3"임을 나타냅니다
이러한 정보는 스크린 리더 등의 보조 기술에서 사용됩니다.
javax.accessibility.AccessibleRelationSet 클래스는 접근성 지원 API의 일부로, 접근성 기능을 가진 객체들 간의 관계를 나타내는 데 사용됩니다
이 클래스는 AccessibleRelation 객체의 집합을 유지 관리하며, 이러한 객체는 접근성 객체의 다른 접근성 객체에 대한 관계를 나타내는 속성과 값 쌍을 포함합니다.

AccessibleRelationSet은 AccessibleRelation을 기반으로 하며, 접근성 객체들 간의 관계를 나타내는 다양한 종류의 AccessibleRelation 객체를 포함할 수 있습니다
AccessibleRelationSet 객체는 일련의 AccessibleRelation 객체들의 집합으로, 이러한 객체들은 다른 접근성 객체들에 대한 관계를 나타내며, AccessibleRelationSet 객체는 이러한 객체들을 유지 관리합니다.

AccessibleRelationSet 클래스는 AccessibleRelation 객체의 컬렉션으로 구현되며, 이러한 객체는 접근성 객체 간의 다양한 관계를 나타냅니다
예를 들어, AccessibleRelationSet 객체는 접근성 텍스트와 관련된 AccessibleRelation 객체, 접근성 테이블과 관련된 AccessibleRelation 객체 등을 포함할 수 있습니다.

AccessibleRelationSet 클래스는 AccessibleContext 클래스에서 사용됩니다
이 클래스는 AccessibleContext.getAccessibleRelationSet() 메서드를 사용하여 접근성 객체와 관련된 AccessibleRelationSet 객체를 검색할 수 있습니다.

아래는 AccessibleRelationSet 클래스의 예제 코드입니다.

 

import javax.accessibility.AccessibleRelation;
import javax.accessibility.AccessibleRelationSet;

public class AccessibleRelationSetExample {
   public static void main(String args[]) {
      // AccessibleRelationSet 생성
      AccessibleRelationSet relationSet = new AccessibleRelationSet();

      // AccessibleRelation 객체 생성
      AccessibleRelation relation1 = new AccessibleRelation(AccessibleRelation.CONTROLLED_BY, new Object());
      AccessibleRelation relation2 = new AccessibleRelation(AccessibleRelation.LABEL_FOR, new Object());

      // AccessibleRelationSet에 AccessibleRelation 추가
      relationSet.add(relation1);
      relationSet.add(relation2);

      // AccessibleRelationSet에서 AccessibleRelation 검색
      AccessibleRelation relation = relationSet.get(AccessibleRelation.CONTROLLED_BY);

      // AccessibleRelation 출력
      System.out.println("Relation Type: " + relation.getKey());
      System.out.println("Relation Value: " + relation.getValues());
   }
}


위의 코드에서는 AccessibleRelationSet 객체를 생성하고, 이 객체에 AccessibleRelation 객체를 추가하고 검색하는 방법을 보여줍니다
AccessibleRelation 객체는 AccessibleRelationSet 객체의 키와 값 쌍으로 저장됩니다
AccessibleRelationSet 객체에서 키를 사용하여 AccessibleRelation 객체를 검색할 수 있으며, 이러한 객체에서 값을 가져올 수 있습니다.

 

import javax.accessibility.AccessibleRelation;
import javax.accessibility.AccessibleRelationSet;
import javax.accessibility.AccessibleRole;

public class AccessibleRelationSetExample {

    public static void main(String[] args) {
        // AccessibleRelationSet 생성
        AccessibleRelationSet relationSet = new AccessibleRelationSet();

        // AccessibleRelation 추가
        relationSet.add(new AccessibleRelation(AccessibleRelation.CONTROLLER_FOR, new AccessibleRole[] {AccessibleRole.BUTTON}));

        // AccessibleRelationSet의 AccessibleRelation 수 가져오기
        int relationCount = relationSet.getAccessibleRelationCount();
        System.out.println("AccessibleRelation 수: " + relationCount);

        // AccessibleRelationSet에서 AccessibleRelation 가져오기
        AccessibleRelation relation = relationSet.getAccessibleRelation(AccessibleRelation.CONTROLLER_FOR);
        if (relation != null) {
            AccessibleRole[] targets = relation.getTarget();
            System.out.println("AccessibleRelation target: " + targets[0]);
        }
    }
}


위 예제 코드에서는 `AccessibleRelationSet` 클래스를 사용하여 접근성 관련 세트를 만들고, `AccessibleRelation` 클래스를 사용하여 세트에 관련을 추가합니다
`getAccessibleRelationCount()` 메서드를 사용하여 세트에 있는 관련 수를 가져오고, `getAccessibleRelation()` 메서드를 사용하여 관련 유형을 가져와서 대상 `AccessibleRole`을 가져올 수 있습니다.

반응형

+ Recent posts