4

ラベルサイズを取得することはできますか?

#include <gtk/gtk.h>

GtkWidget *mainWindow, *titleLabel, *fixedFrame;

mainWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);

//set window default size, and request size and all stuff

fixedFrame = gtk_fixed_new();
gtk_widget_set_size_request...
gtk_container_add(GTK_CONTAINER(mainWindow), fixedFrame);

titleLabel = gtk_label_new("Welcome!");
gtk_widget_set_size_request(titleLabel, x, y);

gtk_fixed_put(GTK_FIXED(fixedFrame), titleLabel, x1, y2);

"Welcome"フレーム内の正しい位置(xy)を計算するために、ラベルのサイズ(、)を知りたいのですが、x1これy1を行う方法がわかりません。GTKドキュメントで検索を試みましたが、成功しませんでした。

4

1 に答える 1

6

わーい!私は方法を見つけました、ここでこれを行う方法

#include <gtk/gtk.h>

GtkWidget *mainWindow, *titleLabel, *fixedFrame;
GtkRequisition req;

mainWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);

//set window default size, and request size and all stuff

fixedFrame = gtk_fixed_new();
gtk_widget_set_size_request...
gtk_container_add(GTK_CONTAINER(mainWindow), fixedFrame);

titleLabel = gtk_label_new("Welcome!");
gtk_widget_size_request(titleLabel, &req);
gtk_widget_set_size_request(titleLabel, req.width, req.height);

gtk_fixed_put(GTK_FIXED(fixedFrame), titleLabel, x1, y2);
于 2012-09-21T03:14:16.167 に答える