Top | ![]() |
![]() |
![]() |
![]() |
GtkWidget * | gtk_frame_new () |
void | gtk_frame_set_child () |
GtkWidget * | gtk_frame_get_child () |
void | gtk_frame_set_label () |
const char * | gtk_frame_get_label () |
void | gtk_frame_set_label_widget () |
GtkWidget * | gtk_frame_get_label_widget () |
void | gtk_frame_set_label_align () |
float | gtk_frame_get_label_align () |
GtkWidget * | child | Read / Write |
char * | label | Read / Write |
GtkWidget * | label-widget | Read / Write |
float | label-xalign | Read / Write |
The frame widget is a widget that surrounds its child with a decorative
frame and an optional label. If present, the label is drawn inside
the top edge of the frame. The horizontal position of the label can
be controlled with gtk_frame_set_label_align()
.
GtkFrame clips its child. You can use this to add rounded corners to widgets, but be aware that it also cuts off shadows.
The GtkFrame implementation of the GtkBuildable interface supports placing a child in the label position by specifying “label” as the “type” attribute of a <child> element. A normal content child can be specified without specifying a <child> type attribute.
An example of a UI definition fragment with GtkFrame:
1 2 3 4 5 6 7 8 |
<object class="GtkFrame"> <child type="label"> <object class="GtkLabel" id="frame_label"/> </child> <child> <object class="GtkEntry" id="frame_content"/> </child> </object> |
GtkWidget *
gtk_frame_new (const char *label
);
Creates a new GtkFrame, with optional label label
.
If label
is NULL
, the label is omitted.
void gtk_frame_set_child (GtkFrame *frame
,GtkWidget *child
);
Sets the child widget of frame
.
GtkWidget *
gtk_frame_get_child (GtkFrame *frame
);
Gets the child widget of frame
.
void gtk_frame_set_label (GtkFrame *frame
,const char *label
);
Removes the current “label-widget”. If label
is not NULL
, creates a
new GtkLabel with that text and adds it as the “label-widget”.
const char *
gtk_frame_get_label (GtkFrame *frame
);
If the frame’s label widget is a GtkLabel, returns the
text in the label widget. (The frame will have a GtkLabel
for the label widget if a non-NULL
argument was passed
to gtk_frame_new()
.)
the text in the label, or NULL
if there
was no label widget or the label widget was not
a GtkLabel. This string is owned by GTK+ and
must not be modified or freed.
[nullable]
void gtk_frame_set_label_widget (GtkFrame *frame
,GtkWidget *label_widget
);
Sets the “label-widget” for the frame. This is the widget that will appear embedded in the top edge of the frame as a title.
GtkWidget *
gtk_frame_get_label_widget (GtkFrame *frame
);
Retrieves the label widget for the frame. See
gtk_frame_set_label_widget()
.
void gtk_frame_set_label_align (GtkFrame *frame
,float xalign
);
Sets the X alignment of the frame widget’s label. The default value for a newly created frame is 0.0.
frame |
a GtkFrame |
|
xalign |
The position of the label along the top edge of the widget. A value of 0.0 represents left alignment; 1.0 represents right alignment. |
float
gtk_frame_get_label_align (GtkFrame *frame
);
Retrieves the X alignment of the frame’s label. See
gtk_frame_set_label_align()
.
“label”
property “label” char *
Text of the frame’s label.
Owner: GtkFrame
Flags: Read / Write
Default value: NULL
“label-widget”
property“label-widget” GtkWidget *
A widget to display in place of the usual frame label.
Owner: GtkFrame
Flags: Read / Write