0
我正在嘗試創建一個全屏窗口,窗口中間覆蓋了一個圖像和一個入口小部件。gtkmm Gtk中的居中小部件::佈局
我已經有圖像的全屏窗口,但是,我正在努力將輸入框完全放置在窗口中間。我試過Gtk::Alignment
,Gtk::VBox
,Gtk::HBox
,Gtk::Table
和許多其他的容器,但說實話,我真的不明白所有的容器他們如何表現。我已經習慣了絕對定位的WIN32 API,這是不同的。我知道我可以在Gtk/gtkmm中使用類似於固定位置的東西,但是,它似乎不是我最乾淨的解決方案。
class App : public Gtk::Window {
public:
[...]
App() {
fullscreen();
Gdk::Rectangle rec = get_screen()->get_monitor_workarea(get_screen()->get_primary_monitor());
set_default_size(rec.get_width(), rec.get_height());
show();
m_bgImage.set("image.jpg");
m_layout.add(m_bgImage);
m_entry.set_size_request(300, 30);
m_entry.set_opacity(0.5);
m_entry.set_visibility(false);
m_entry.signal_activate().connect(sigc::mem_fun(*this, &PadlockGui::onPasswordEntryReturn));
m_entry.set_icon_from_icon_name("edit-clear", Gtk::ENTRY_ICON_SECONDARY);
m_entry.signal_icon_press().connect(sigc::mem_fun(*this, &PadlockGui::clearPasswordEntry));
m_layout.add(m_entry);
add(m_layout);
show_all_children();
}
private:
Gtk::Layout m_layout;
Gtk::Image m_bgImage;
Gtk::Entry m_entry;
[...]
};
謝謝,我一定會嘗試,但是,我仍然相信它必須以某種方式與Gtk :: Layout和Gtk :: Image一起工作。 – ProXicT