【问题标题】:Gtk Text View widget changing size of my windowGtk Text View 小部件改变我的窗口大小
【发布时间】:2014-08-26 16:34:49
【问题描述】:

我正在尝试学习如何使用 GTK。我熟悉 Java 的 JSwing,但很难控制 GTK 小部件。

下面我创建一个窗口并添加一个表格容器(我假设它就像一个 LayoutManager)。我还在第一个单元格中添加了一个文本视图(类似于 JTextArea)。

当我开始在文本视图中输入时,当我的文本越过边缘时,我的窗口就会变大。如何使窗口保持相同大小并在文本视图中具有滚动能力?

#include "window.h"

void window_create(ChatWindow* window)
{
    //Allocate the actual window. Our ChatWindow object has a pointer to a GTKWidget called window
    window->window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

    //Set the size of the window
    gtk_window_set_default_size(GTK_WINDOW(window->window), 250, 180);

    //Close the program when they click the x button
    g_signal_connect(window->window,"delete-event", G_CALLBACK(gtk_main_quit), NULL);

    //Show the window
    gtk_widget_show(window->window);

    gtk_window_set_title(GTK_WINDOW(window->window),"Chat Program");

    //Setup the Window
    window->chatHistory = gtk_text_view_new();      //Allocate the new TextView


    window->layout = gtk_table_new(4,4,TRUE);
    gtk_table_attach_defaults(GTK_TABLE(window->layout), window->chatHistory, 0, 1, 0, 1 );

    gtk_container_add(GTK_CONTAINER(window->window), window->layout);

    gtk_widget_show_all(window->window);
}

【问题讨论】:

    标签: gtk


    【解决方案1】:

    GtkTextView 放在GtkScrolledWindow 中,它将获得滚动功能。滚动的窗口也不会变大。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-02
      • 1970-01-01
      相关资源
      最近更新 更多