2 개의 포럼에서 시도했지만 지금까지 행운이 없었습니다.GTK app : Qt/C++로 작업 표시기를 만들려면 어떻게해야합니까?
그래서 Ubuntu 마무리 대회에 참가할 수 있도록 내 응용 프로그램을 빌드하기 위해 Qt IDE를 사용하고 있습니다. 그래서, 기본적으로 내가 클릭에, 그것은 표시기 표시하고 응용 프로그램을 표시, 간단한 표시 항목을 만들려고 노력하고
void show_app(MainWindow *data)
{
//this works fine:
app_indicator_set_status(appindicator, APP_INDICATOR_STATUS_PASSIVE);
//this crashes the application:
data->show();
}
void MainWindow::make_indicator()
{
if(appindicator){
//appindicator has already been created
return;
}
appindicator = app_indicator_new("Format Junkie Indicator", "formatjunkie", APP_INDICATOR_CATEGORY_APPLICATION_STATUS);
GtkWidget* showapp_option;
GtkWidget* indicatormenu = gtk_menu_new();
GtkWidget* item = gtk_menu_item_new_with_label("Format Junkie main menu");
gtk_menu_item_set_submenu(GTK_MENU_ITEM(item), indicatormenu);
showapp_option = gtk_menu_item_new_with_label("Show App!");
g_signal_connect(showapp_option, "activate", G_CALLBACK(show_app), this);
gtk_menu_shell_append(GTK_MENU_SHELL(indicatormenu), showapp_option);
gtk_widget_show_all(indicatormenu);
app_indicator_set_status(appindicator, APP_INDICATOR_STATUS_ACTIVE);
app_indicator_set_attention_icon(appindicator, "dialog-warning");
app_indicator_set_menu(appindicator, GTK_MENU (indicatormenu));
}
: 내 응용 프로그램에서 나는 다음과 같은 완료했습니다. 표시기는 거기 저쪽에있는 패시브를 사용하여 성공적으로 감추어 질 수 있지만, 데이터 호출 -> show(); 동안 응용 프로그램이 충돌합니다.
내가 뭘 잘못하고 있는지에 대한 도움을 주시면 감사하겠습니다! 또한, 내가 직면하고있는이 문제를 바로 잡을 수 있도록 도와주세요. (대안으로, 나는 아주 쉽고 효율적으로 처리 할 수있는 우분투 12.04에서 잘 작동하는 오래된 트레이 아이콘으로 마이그레이션 할 것입니다.)
어떻게 작동시키는 지 자세히 설명해 주시겠습니까? – Goddard
@Goddard http://bit.ly/1dQggw1 소스를 다운로드하고 nongui.cpp에서 표시기를 검색하십시오. – hakermania