GTK+에서 부품의 기본 개념
2190 단어 GTK+
GTK+에서 부품의 기본 개념
분류: GTK+
유창부재와 무창부재
는 관련 GdkWindow에 근거하여 위젯은'유창부재'와'무창부재'로 나눌 수 있다
Gdk 윈도우와 Gtk 윈도우는 다르다.GdkWindow는 X 서버가 평면경을 구분하는 데 사용되는 추상적인 개념이다.x 서버에 표시할 도형에 대한 구조 정보를 제공하는 Gdk 창
대부분의 구성 요소는 연결된 Gdk 윈도우 창을 가지고 있으며, 구성 요소는 이 창에 그려져 있습니다.
일부 부품은 이와 관련된 Gdk Window가 없고 상대적으로 경량급이다. 예를 들어 Gtk Label 부품이다.창 없는 위젯은 부모 위젯의 GdkWindow 창에 그려집니다.
일부 작업은 GdkWindow 창 (예를 들어 이벤트 포착, 배경색 그리기) 을 요구하기 때문에 창 없는 위젯에서 이런 일을 할 수 없습니다
민감성
부재는 민감하거나 민감하지 않을 수 있으며, 민감하지 않은 부재는 입력에 응답할 수 없다.일반적으로 민감하지 않은 부품은 회색이어서 키보드의 초점을 받아들일 수 없다.
가오리는ltk_widget_set_sensitive () 함수는 구성 요소의 민감성을 바꿉니다.함수 원형은 다음과 같습니다.
void gtk_widget_set_sensitive(GtkWidget *widget, gboolean sensitive);
가오리 부재의 부족은 민감하다.그러나 부품의 모든 용기가 민감해야 부품이 진정으로 민감하다.따라서 용기의 민감성은 전체 용기 안의 모든 부품의 민감성에 영향을 미친다.사용 가능한 GTK_WIDGET_IS_SENSITIVE 매크로를 사용하여 부품의 진정한 민감성을 테스트합니다. GTK_WIDGET_SENSITIVE 매크로는 위젯 자체의 민감성을 테스트합니다.
초점, 독점 및 기본 위젯
초점
XWindow의 현재 맨 윗부분 창에 키보드 초점이 있을 수 있습니다.맨 윗부분 창에서 받은 키보드 이벤트는 초점이 있는 위젯으로 전송됩니다
대부분의 부품은 초점이 있을 때 가느다란 검은 테두리가 있는 것처럼 시각적 지시가 있다.
독점하다
위젯은 다른 위젯에서 마우스 포인터와 키보드를 독점한다.즉, 위젯은'모형'으로 사용자가 이 위젯에 문자를 입력할 수 있을 뿐 키보드 초점도 다른 위젯으로 바꿀 수 없다.
는 두 가지 등급의 독점이 있는데 그것이 바로 응용 프로그램 등급의 독점과 Gdk급의 독점이다.위젯 독점은 GTK+의 개념으로 같은 응용 프로그램의 다른 위젯의 사건만 독점한다.Gdk급의 독점은 X 서버 범위 내에서 발생한다. 즉, 다른 응용 프로그램은 키보드와 마우스 이벤트를 받을 수 없다.
각 창에는 부족한 구성 요소가 하나 이상 있습니다.
부재 상태
가오리 부재의 상태가 그것들의 외관을 결정한다.상태의 정확한 의미와 시각적 표현은 특정 구성 요소와 현재 창 관리자의 주제에 의존한다
부재는 5가지 상태가 있을 수 있으며 GTK_WIDGET_STATE(widget) 매크로는 위젯의 상태 값을 가져옵니다. 이 매크로는 위젯 상태를 나타내는 상수를 되돌려줍니다.다음과 같습니다.
상태
상태 값
함의
normal
GTK_STATE_NORMAL
원래 있어야 할 모습이에요.
active
GTK_STATE_ACTIVE
위젯이 선택됨
prelight
GTK_STATE_PRELIGHT
마우스 위젯 건너뛰기
selected
GTK_STATE_SELECTED
위젯은 목록에 놓이거나 다른 유사한 상태에서 선택되었습니다.
insensitive
GTK_STATE_INSENSITIVE
부재는 회색, 비활성, 또는 응답하지 않음
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
GTK+에서 부품의 기본 개념Gdk 윈도우와 Gtk 윈도우는 다르다.GdkWindow는 X 서버가 평면경을 구분하는 데 사용되는 추상적인 개념이다.x 서버에 표시할 도형에 대한 구조 정보를 제공하는 Gdk 창 대부분의 구성 요소는 연결된 Gdk...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.