버튼 그룹 속성

버튼 그룹 속성 (Uibuttongroup Properties)

여러 개의 토글 버튼을 하나의 그룹으로 묶어서, 그 안에서 하나만 선택되도록 하고 싶을 때 쓰는 게 버튼 그룹(uibuttongroup)이에요. 이 문서에서는 uibuttongroup 객체의 속성을 항목별로 정리해요.

출처: 문서

본문

uibuttongroup 객체(see uibuttongroup)의 속성은 외형(Appearance), 버튼 그룹 동작(Button Group Operation), 콜백 실행(Callback Execution), 생성/삭제(Creation/Deletion), 표시(Display), 마우스 상호작용(Mouse Interaction), 객체 식별(Object Identification), 객체 위치(Object Position), 부모/자식(Parent/Children), 텍스트 외형(Text Appearance) 범주로 나뉘어요.

외형 (Appearance)

backgroundcolor: colorspec, 기본 [0.9400 0.9400 0.9400]

이 버튼 그룹의 배경 색 값이에요.

bordertype: "beveledin" | "beveledout" | {"etchedin"} | "etchedout" | "line" | "none"

버튼 그룹을 둘러싸는 선 테두리(border line)를 그릴지 여부와 종류를 설정해요.

borderwidth: 자연수 스칼라, 기본 1

선 테두리의 픽셀 너비예요.

foregroundcolor: colorspec, 기본 [0 0 0]

이 버튼 그룹의 제목 텍스트 색 값이에요.

highlightcolor: colorspec, 기본 [1 1 1]

이 버튼 그룹을 둘러싸는 선의 색 값이에요.

shadowcolor: colorspec, 기본 [0.7000 0.7000 0.7000]

이 버튼 그룹의 테두리 선을 둘러싸는 선의 색 값이에요.

sizechangedfcn: 문자열 | 함수 핸들, 기본 [](0x0)

버튼 그룹의 크기가 바뀔 때 트리거되는 콜백이에요. 리스너 함수 작성 방법은 Callbacks 섹션 참고.

버튼 그룹 동작 (Button Group Operation)

selectedobject: 기본 [](0x0)

버튼 그룹에서 현재 선택된 항목의 그래픽 핸들이에요.

콜백 실행 (Callback Execution)

busyaction: "cancel" | {"queue"}

다른 객체의 실행 중인 콜백을 방해할 수 없을 때 이 객체의 콜백 속성 실행을 Octave가 어떻게 처리할지 정의해요. 현재 실행 중인 콜백 객체의 interruptible 속성이 "off"로 설정된 경우에만 관련돼요. 방해하려는 콜백 객체의 busyaction 속성이 그 콜백을 대기열에 넣을지("queue"(기본)) 버릴지("cancel")를 나타내요. Callbacks 섹션 참고.

interruptible: "off" | {"on"}

이 객체의 콜백 함수가 다른 콜백에 의해 방해받을 수 있는지 지정해요. 기본적으로 interruptible"on"이고, drawnow, figure, waitfor, getframe, pause 함수를 사용하는 콜백은 결국 방해받게 돼요. Callbacks 섹션 참고.

resizefcn: 문자열 | 함수 핸들, 기본 [](0x0)

resizefcn은 더 이상 권장되지 않아요. 대신 sizechangedfcn을 사용하세요.

selectionchangedfcn: 문자열 | 함수 핸들, 기본 [](0x0)

버튼 그룹 안의 선택된 항목이 바뀔 때 트리거되는 콜백이에요. 리스너 함수 작성 방법은 Callbacks 섹션 참고.

생성/삭제 (Creation/Deletion)

beingdeleted: {"off"} | "on"

함수가 객체 삭제를 시작했음을 나타내는 속성이에요. beingdeleted는 객체가 더 이상 존재하지 않을 때까지 true로 설정돼요.

createfcn: 문자열 | 함수 핸들, 기본 [](0x0)

uibuttongroup이 생성된 직후 실행되는 콜백 함수예요. root 객체의 기본 속성으로 설정해요. 예: set (groot, "defaultuibuttongroupcreatefcn", 'disp ("uibuttongroup created!")'). 리스너 함수 작성 방법은 Callbacks 섹션 참고.

deletefcn: 문자열 | 함수 핸들, 기본 [](0x0)

uibuttongroup이 삭제되기 직전에 실행되는 콜백 함수예요. 리스너 함수 작성 방법은 Callbacks 섹션 참고.

표시 (Display)

clipping: "off" | {"on"}

clipping"on"이면 uibuttongroup이 부모 axes 한계 안에서 잘려요.

visible: "off" | {"on"}

visible"off"면 uibuttongroup이 화면에 렌더링되지 않아요.

마우스 상호작용 (Mouse Interaction)

buttondownfcn: 문자열 | 함수 핸들, 기본 [](0x0)

리스너 함수 작성 방법은 Callbacks 섹션 참고.

contextmenu: 그래픽스 핸들, 기본 [](0x0)

현재 이 uibuttongroup 객체와 연결된 uicontextmenu 객체의 그래픽스 핸들이에요.

hittest: "off" | {"on"}

uibuttongroup이 마우스 이벤트를 처리할지, 아니면 객체의 조상으로 전달할지 지정해요. 활성화되면 객체가 마우스 클릭에 반응할 수 있어요. "buttondownfcn"을 평가하고, uicontextmenu를 표시하고, 결국 root "currentobject"가 될 수 있어요. 이 속성은 객체가 마우스 클릭을 받을 수 있을 때만 관련되며, 이는 "pickableparts" 속성으로 결정돼요. pickableparts 속성 참고.

pickableparts: "all" | "none" | {"visible"}

uibuttongroup이 마우스 클릭을 받을지 지정해요. 기본적으로 pickableparts"visible"이고, uibuttongroup의 보이는 부분만(또는 그 자식만) 마우스 클릭에 반응할 수 있어요. "all"이면 보이는 부분과 보이지 않는 부분(또는 자식) 모두 반응할 수 있어요. "none"이면 객체에 대한 마우스 클릭을 무시하고 그 아래에 있는 객체에 전달해요. 객체가 마우스 클릭을 받도록 설정되면 "hittest" 속성이 클릭 처리 방식을 결정해요. hittest 속성 참고.

selected: {"off"} | "on"

이 uibuttongroup이 선택되었는지 나타내는 속성이에요.

selectionhighlight: "off" | {"on"}

selectionhighlight"on"이면 uibuttongroup의 선택 상태를 시각적으로 강조해요.

객체 식별 (Object Identification)

tag: 문자열, 기본 ""

그래픽 객체에 붙이는 사용자 정의 문자열이에요.

type (읽기 전용): 문자열

그래픽 객체의 클래스 이름이에요. type은 항상 "uibuttongroup"이에요.

userdata: 모든 Octave 데이터, 기본 [](0x0)

그래픽 객체와 연결할 사용자 정의 데이터예요.

객체 위치 (Object Position)

position: 네 원소 벡터, 기본 [0 0 1 1]

버튼 그룹의 크기를 네 원소 벡터 [left, bottom, width, height]로 나타낸 값이에요.

units: "centimeters" | "characters" | "inches" | {"normalized"} | "pixels" | "points"

"position" 속성을 해석하는 데 쓰는 측정 단위예요.

부모/자식 (Parent/Children)

children (읽기 전용): 그래픽스 핸들 벡터, 기본 [](0x0)

uibuttongroup의 자식들의 그래픽스 핸들이에요.

handlevisibility: "callback" | "off" | {"on"}

handlevisibility"off"면 uibuttongroup의 핸들이 부모의 "children" 속성에 보이지 않아요.

parent: 그래픽스 핸들

부모 그래픽 객체의 핸들이에요.

텍스트 외형 (Text Appearance)

fontangle: "italic" | {"normal"}

글꼴을 이탤릭으로 할지 보통으로 할지 제어해요.

fontname: 문자열, 기본 "*"

텍스트 렌더링에 쓰는 글꼴 이름이에요. 이 속성을 설정하면 텍스트 렌더링 엔진이 시스템에서 일치하는 글꼴을 찾아요. 찾지 못하면 기본 산세리프(sans serif) 글꼴(기본값 "*"와 동일)로 렌더링해요. 프로그래밍 참고: FontConfig를 기본으로 쓰지 않는 시스템(Linux를 제외한 대부분)에서는 Octave 설치 시 글꼴 캐시가 만들어져요. 새 글꼴을 설치한 뒤에는 system ("fc-cache -fv")를 직접 실행해야 해요.

fontsize: 스칼라, 기본 10

텍스트 렌더링에 쓰는 글꼴 크기예요. fontunits 속성 참고.

fontunits: "centimeters" | "inches" | "normalized" | "pixels" | {"points"}

"fontsize" 속성을 해석하는 데 쓰는 단위예요.

fontweight: "bold" | {"normal"}

텍스트 렌더링에 쓰는 기본 글꼴의 변형을 제어해요.

title: 문자열, 기본 ""

버튼 그룹 제목의 텍스트예요.

titleposition: "centerbottom" | "centertop" | "leftbottom" | {"lefttop"} | "rightbottom" | "righttop"

버튼 그룹 안에서 제목의 상대 위치예요.

더 알아보기

  • 버튼 그룹을 만드는 uibuttongroup 함수를 함께 살펴보세요.
  • 라디오 버튼(uicontrol)과 Callbacks 섹션, colorspec도 이어서 확인해 보세요.