본문 바로가기

layout6

[GTK+] 3. GTK+ Layout 관리 0. 들어가기 전.. 이번에 다룰 부분은 GTK+ 프로그래밍을 할 때, Layout을 관리하기 위한 함수들을 정리하려고 합니다. 이 부분은 자바의 swing과 같은 GUI를 프로그래밍할 때, 꼭 필요한 부분이라고 할 수 있습니다. GTK+ 도 역시, GUI 프로그래밍이므로, layout을 관리하기 위한 여러 가지의 함수들이 있습니다. 지금부터 그러한 함수들을 소개하도록 하겠습니다. 1. GtkFixed 먼저, GtkFixed 함수는 고정된 위치와 사이즈로 child widget을 위치시키는 기능을 합니다. 다시 말하자면, 이 기능은 프로그램을 개발하는 사람 마음대로 widget의 위치를 정할 수 있다는 뜻입니다. 예제를 통해 설명을 이어가겠습니다. GtkFixedEx.c1234567891011121314.. 2017. 6. 17.
GTK+ layout 관리 [5] Corner buttons 모서리에 버튼 위치시키는 방법. 이번 기능은 Window창의 모서리에 버튼을 위치시키는 방법을 소개하고자 한다. 보통 다이얼로그 창에는 버튼을 가운데 두지 않는다. 보통 모서리에 두기 때문에 GTK에서도 이러한 기능을 따로 두지 않았나라고 조심히 생각해본다. 그럼 예를 보자. 출처: http://zetcode.com/gui/gtk2/gtklayoutmanagement/ 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849#include int main(int argc, char *argv[]) { GtkWidget *window; GtkWidget *okBtn; GtkWidget *clsBtn; GtkWidget *vbox; Gt.. 2017. 4. 23.
GTK+ layout 관리 [4] GtkTable · GtkTable은 열과 행을 배치할 수 있다. 예제 12345678910111213141516171819202122232425262728293031323334353637#include int main(int argc, char *argv[]) { int i; int j; int pos = 0; GtkWidget *window; GtkWidget *table; GtkWidget *button; gchar *values[20] = { "7", "8", "9", "/", "~", "4", "5", "6", "*", "!", "1", "2", "3", "-", "@", "0", ".", "=", "+", "#" }; gtk_init(&argc, &argv); window = gtk_window_new(GTK.. 2017. 4. 14.
GTK+ layout 관리 [3] GtkVBox, GtkHBox · GtkVBox는 수평 박스 컨테이너이다. 하나의 칼럼에 chile widget을 놓는다.· GtkHBox는 수직 박스 컨테이너이다. 하나의 열에 chile widget을 놓는다. 예제123456789101112131415161718192021222324252627282930313233#include int main(int argc, char* argv[]) { GtkWidget* window; GtkWidget* vbox; GtkWidget* settings; GtkWidget* accounts; GtkWidget* loans; GtkWidget* cash; GtkWidget* debts; gtk_init(&argc, &argv); window = gtk_window_new(GTK_WINDOW_TOP.. 2017. 4. 14.