2016-04-03 26 views
1

我已經使用此功能>>如何在gtk上添加text_view滾動條?

text_v = gtk_text_view_new() 

BT這裏滾動不工作,以及如何TextView的大小設置添加txtview,都用這一個= >>

gtk_widget_set_size_request(text_v,400,200); 

BT也不工作

+2

GtkTextViews不會自動自動滾動;您需要將GtkTextView設置爲GtkScrolledWindow的子項,並將其放到父窗口小部件中。 – andlabs

回答

1

這是我做的方式:

#include<gtk/gtk.h> 

int main(int argc, char* argv[]) 
{ 
    GtkWidget *textview, *window, *scrolledwindow; 
    GtkTextBuffer *buffer; 

    gtk_init(&argc, &argv); /*void gtk_init (int *argc,char ***argv);*/ 
    window = gtk_window_new(GTK_WINDOW_TOPLEVEL); 

    gchar* sample_text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit,\n" \ 
     "sed do eiusmod tempor incididunt ut labore et dolore magna\n" \ 
     "aliqua. Ut enim ad minim veniam, quis nostrud exercitation\n" \ 
     "ullamco laboris nisi ut aliquip ex ea commodo consequat.\n"\ 
     "Duis aute irure dolor in reprehenderit in voluptate velit\n"\ 
     "esse cillum dolore eu fugiat nulla pariatur. Excepteur sint\n"\ 
     "occaecat cupidatat non proident, sunt in culpa qui officia\n"\ 
     "deserunt mollit anim id est laborum."; 

    textview = gtk_text_view_new(); 
    gtk_widget_set_size_request(textview, 400, 200); // This is but a request. The sizes are not guaranteed. 
    scrolledwindow = gtk_scrolled_window_new(NULL, NULL); 

    buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textview)); 
    gtk_text_buffer_set_text(buffer, sample_text, -1); 

    gtk_container_add(GTK_CONTAINER(scrolledwindow), textview); 
    gtk_container_add(GTK_CONTAINER(window), scrolledwindow); 
    gtk_widget_show_all(window); 

    gtk_main(); 

    return 0; 
} 

我如果你需要自定義滾動窗口,那麼值得看看here

+0

謝謝@sjsam ..它正在工作:) – user

+1

不客氣的朋友.. – sjsam

+0

如何在這個窗口中設置大小滾動textview,因爲我也會在它上面添加一個按鈕 – user