TLDR: Wie übergebe ich die Widgets als ConstraintTargets an Gtk::Constraint::create?
Nach meinem Verständnis sollte ich die Einschränkung erstellen, mit dem Ziel als Beschriftung, der Quelle als Maßstab und dem entsprechenden Attribut und der entsprechenden Beziehung. Dann würde ich die Einschränkung zu einem ConstraintLayout hinzufügen und dieses Layout als Layout-Manager meines Rasters festlegen, mit Code, der wie folgt aussieht:
Code: Select all
Gtk::Label label("Example");
Gtk::Scale scale(Gtk::Orientation::HORIZONTAL);
Gtk::Grid grid;
int size = 300;
scale.set_size_request(size, -1);
grid.attach(label, 0, 0);
grid.attach(scale, 0, 1);
auto constraint = Gtk::Constraint::create(
// ?? label, somehow
Gtk::Constraint::Attribute::WIDTH,
Gtk::Constraint::Relation::LE,
// ?? scale, somehow
Gtk::Constraint::Attribute::WIDTH,
1.0,
0.0
);
auto layout = Gtk::ConstraintLayout::create();
layout->add_constraint(constraint);
grid.set_layout_manager(layout);
Ich weiß, dass erwartet wird, dass die Ziel- und Quellargumente Glib::RefPtr& sind, aber ich bin verloren. Wie würde ich meine Widgets eigentlich als ConstraintTargets zur Verwendung hier übergeben?
Mobile version