본문 바로가기
컴퓨터 관련

GTK [5] Mnemonic.

by _BlankSpace 2017. 4. 10.

다음으로는 GTK에서 ALT버튼과 단축키를 조합하여 눌러서 프로그램을 진행할 수 있는 기능을 소개하겠습니다.


그 기능을 Mnemonic이라고 합니다.


Mnemonic은 widget를 활성화하는 단축키다. ALT + 설정 키를 누르면 됩니다.


예제를 보겠습니다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <gtk/gtk.h>
void print_msg(GtkWidget *widget, gpointer window) {
    g_print("Button clicked\n");
}
int main(int argc, char *argv[]) {
    GtkWidget* window;
    GtkWidget* button;
    GtkWidget* halign;
    gtk_init(&argc, &argv);
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_window_set_title(GTK_WINDOW(window), "Mnemonic");
    gtk_window_set_default_size(GTK_WINDOW(window), 300200);
    gtk_container_set_border_width(GTK_CONTAINER(window), 15);
    button = gtk_button_new_with_mnemonic("_Button");
    g_signal_connect(button, "clicked", G_CALLBACK(print_msg), NULL);
    halign = gtk_alignment_new(10101010);
    gtk_container_add(GTK_CONTAINER(halign), button);
    gtk_container_add(GTK_CONTAINER(window), halign);
    gtk_widget_show_all(window);
    g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit),
            NULL);
    gtk_main();
    return 0;
}
cs



코드 설명.


button = gtk_button_new_with_mnemonic("_Button");

gtk_button_new_with_mnemonic() 함수는 label을 포함하는 새로운 GtkButton를 생성합니다.


g_signal_connect(button, "clicked", G_CALLBACK(print_msg), NULL);

버튼을 누르면 메시지가 콘솔에 출력됩니다.

'컴퓨터 관련' 카테고리의 다른 글

리눅스 커맨드 흔한 에러 해결법 [1]  (3) 2017.04.12
GTK+ layout 관리 [1] GtkFixed  (0) 2017.04.12
GTK [4] Tooltip.  (0) 2017.04.10
GTK [3] application icon 출력.  (0) 2017.04.09
GTK [2] 가운데에 창 띄우기.  (0) 2017.04.09

댓글