[완료] GTK+에서 Box를 이용해 Layout을 설계할때...

mg2000의 이미지

안녕하세요.

요즘 GTK+ Tutorial을 보면서 이것저것 배우고 있는데요.

궁금한 것 중 하나가 Widget을 배치하면서, Box를 이용해서 배치를 하였는데요.

이거 박스의 크기를 조절할 수 없는지 궁금하네요.

hbox로 첫번째 칸은 300픽셀 두번째 칸은 100픽셀 이런식으로 영역을 고정해서 할당

할 수는 없나요?

hbox말고 다른 걸로 해야 되나...

Widget의 크기도 별도 설정이 안되는 것 같고...
(Text Entries나 기타 Widget들)

redneval의 이미지

GTK 에서는

세부적인 크기설정은 parent 가 아닌 child 에서 해야합니다.

예를 들어 HBox 에 Button 을 넣는 경우,

(1) Button 을 넣을 때는

gtk_box_pack_start(GtkBox *box, GtkWidget *child, gboolean expand, gboolean fill, guint padding);

메서드에서 expand 와 fill 은 false 로 하고

(2) 넣고 나서는

gtk_widget_set_size_request 로 크기를 요청하면 됩니다.

그리고 Glade 프로그램을 사용해보는 것이 개념을 이해하는데 도움이 될 겁니다.

--------------------Signature--------------------
Light a candle before cursing the darkness.

mg2000의 이미지

말씀해주신대로 하니까 widget의 크기를 수정할 수 있네요.

궁금한게 하나 더 생겼는데...

Label의 길이를 늘렸더니, Label의 텍스트 내용이 항상 가운데에 위치하네요.

원래 기본적으로 왼쪽 정렬이 되는 것 아니었나요?

왼쪽 정렬 또는 오른쪽 정렬을 설정해도 가운데로만 오네요..

요건 어떻게 해결해야 할까요...

redneval의 이미지

http://library.gnome.org/devel/gtk/2.12/GtkLabel.html

에 보면 다음과 같은 내용이 있습니다.

Quote:

gtk_label_set_justify() sets how the lines in a label align with one another. If you want to set how the label as a whole aligns in its available space, see gtk_misc_set_alignment().

gtk_misc_set_alignment() 메서드를 사용하세요.

그리고 이런 세부적인 내용은 먼저 공식문서에 있는지 찾아보세요.

--------------------Signature--------------------
Light a candle before cursing the darkness.

mg2000의 이미지

알려주신 링크는 저도 보았었는데, 그런 문구를 건너 뛰고 봤었네요.

다음부터는 좀 더 꼼꼼히 봐야겠습니다.. ^^