当应用程序在X服务器中运行时,EntryCompletion中的Gtk#ListStore不可见

时间:2014-06-23 13:28:49

标签: c++ gtkmm

我创建了EntryCompletion。 以下是代码,

Glib::RefPtr<Gtk::EntryCompletion> completion = Gtk::EntryCompletion::create();
Glib::RefPtr<Gtk::ListStore> refCompletionModel = Gtk::ListStore::create(m_columns);

std::list<string> mylist;
mylist.push_back("Alen");
mylist.push_back("Asian bro");
mylist.push_back("Bob");
mylist.push_back("Bob medal");

Gtk::TreeModel::Row row;
std::list<string>::iterator itr = mylist.begin();

for(; itr != mylist.end();  ++itr)
{
  row = *(refCompletionModel->append());
  row[m_columns.m_col_name] = *itr;
}

completion->set_text_column(m_columns.m_col_name);
completion->set_model(refCompletionModel);
cmbSearch->set_popdown_strings(mylist);
cmbSearch->get_entry()->set_completion(completion);

当我在Gnome桌面环境中运行我的二进制文件时,它工作正常。但是当我在X服务器中运行时,在组合框条目内输入不会显示自动检测到的字符串。

在X服务器上运行命令, / usr / bin / xinit ./binaryName ../conf/confFile - :2

感谢您的帮助。

0 个答案:

没有答案