0
獲取錯誤:GTK_IS_ENTRY FAILED
傳遞指針和數組的功能GTK我有以下陣列相關
獲取錯誤:GTK_IS_ENTRY FAILED
傳遞指針和數組的功能GTK我有以下陣列相關
void CreateProfile(GtkWidget* widget, gpointer data) {
GtkEntry** entries = (GtkEntry**) data;
if (gtk_entry_get_text_length(GTK_ENTRY(entries[0]))== 0) do_something();
}
回調的第二個參數應該是gpoitner。
我相信在
g_signal_connect(G_OBJECT(Buttons[0]),"clicked",G_CALLBACK(CreateProfile),EntryBoxes);
EntryBoxes
實際GtkEntrys
之前定義。你傳遞的內容不是指向數組的指針,而是指向第一個數組元素的指針。所以,你必須轉換gpointer
一個指針這樣的元素,即一個GtkEntry*
(不是GtkEntry**
)
void CreateProfile(GtkWidget* widget, gpointer data) {
GtkEntry* entries = (GtkEntry*) data;
if (gtk_entry_get_text_length(GTK_ENTRY(entries[0]))== 0)
do_something();
}
還是同樣的錯誤 – sometimes 2011-04-22 10:31:07
什麼是傳遞是一個指針,而不是一個指針的指針。 – datenwolf 2011-04-22 11:43:49