본문 바로가기

GTK+12

[GTK+] 1. GTK+ 소개 1. GTK+ 란?GTK+는 C로 이루어졌지만, 클래스의 개념과 Callback 함수 (함수에 대한 포인터)를 갖춘 객체지향적 특성을 갖춘 기술이라고 할 수 있습니다. 그럼 GTK+는 차라리 C++ 용으로 나오는 게 낫지 않았을까 라고 생각하실 수 있습니다. 이러한 생각이 많았는 지, GTK+는 C++ 스타일로도 나오게 됩니다. 그것을 GTK-- 또는 GTKMM이라고 합니다. 정확한 GTK+ 개발 문서는 https://developer.gnome.org/gtkmm-tutorial/stable/index.html.en 참고하시길 바랍니다. 그리고, 아시는 분들은 아시겠지만, C 스타일의 GTK+로도 클래스화가 가능합니다. 이 말은 C++에서도 GTK+를 사용할 수 있다는 말입니다. C++에서 사용하려면 클.. 2017. 6. 11.
[GTK+] GTK를 들어가면서 (목차) 0. 서론 요즘에는 GTK를 이용하여 gui화 하시는 분들이 얼마나 계실지 모르겠지만, 그 수는 굉장히 적을 것으로 예상합니다. 물론, 모르시는 분들도 상당 수일 거라고 생각합니다. 제 주변에도 아시는 분들은 예전부터 개발을 해오던 (특히, 리눅스로 개발하신 분)을 제외하고는.. 아시는 분들은 손에 꼽을 정도 였습니다. 저도 어찌저찌하다보니, GTK+에 입문하게 되어, 개인적으로 프로그램도 개발해볼 수 있었던 경험을 얻게 되었답니다. 물론, GTK를 지속해서 사용할 수 있을 것이라는 생각은 들지 않았습니다.ㅠㅠ 최근에는 QT도 있고, 여러 가지로 개발할 수 있기 때문입니다. 그래서, 기왕 이번에 GTK를 공부하면서, 정리도 해보는 것은 어떨까 라는 생각을 하게 되었습니다. 또, 압니까. 저의 포스팅이 누.. 2017. 6. 9.
GTK+ 버튼 클릭으로 콘솔에 문자열 출력 GTK의 시그널 처리를 이용하여 버튼을 누를 때마다 Console 창에 특정 문자열을 출력하는 방법을 소개하고자 한다. Java에서 액션리스너를 사용하여, 간단하게 출력하는 것처럼 GTK도 간단하다. 그럼 다음 소스를 먼저 보자.123456789101112131415161718192021222324252627282930313233343536#include void button_clicked(GtkWidget *widget, gpointer data) { g_print("clicked\n");} int main(int argc, char *argv[]) { GtkWidget *window; GtkWidget *halign; GtkWidget *btn; gtk_init(&argc, &argv); window.. 2017. 4. 23.
GTK+ 이벤트[2] g_signal_connect과 g_signal_connect_swapped 의 차이점 GTK를 하면서 가장 궁금했던 점은 g_signal_connect과 g_signal_swapped 의 차이점이었다.비슷한 기능인데, 굳이 왜 존재하는 함수일까라는 의문이 많이 들었다.이러한 고민을 하는 분에게 간단하게 소개하고자 한다.123g_signal_connect_swapped (button, "clicked", (GCallback) gtk_widget_hide, other_widget);Colored by Color Scriptercs 12345678910111213static void button_clicked_cb (GtkButton* button, GtkWidget* other_widget) { gtk_widget_hide (other_widget); } ... g_signal_connect.. 2017. 4. 23.