Linux-Bulgaria.ORG
навигация

 

начало

пощенски списък

архив на групата

семинари ...

документи

как да ...

 

 

Предишно писмо Следващо писмо Предишно по тема Следващо по тема По Дата По тема (thread)

lug-bg: GtkCList въпрос?


  • Subject: lug-bg: GtkCList въпрос?
  • From: Vladimir Paskov <vlado-paskov@xxxxxxx>
  • Date: Tue, 16 Mar 2004 19:43:29 +0200

Здравейте група,
ако някой разбира нека ми помогне. А ето за какво става въорос:

Имам следната функция:

void list_files (gpointer data)
{
	gchar *path [0];
	struct dirent **file_list = NULL;
	int j;
	int i;
	gchar row;
	i = scandir (".", &file_list, 0, alphasort);
	
	if (i < 0)
		perror("scandir");
	else {
		for (j = 0; j < i; j++) {
			gtk_clist_append ((GtkCList *)data, path);
		}
	}
}

Нейната цел, както се вижда е да зареди списък с директории и да ги
покаже в GtkCList widget.

Ето я и останалата част от фаила:
int main (int argc, gchar *argv [0])
{
	GtkWidget *main_window;
	GtkWidget *vbox, *hbox;
	GtkWidget *scrolled_window, *clist;
	GtkWidget *button_add;
	gchar *titles[1] = { "File name"};
	
	gtk_init(&argc, &argv);
	
	main_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
	gtk_widget_set_size_request (GTK_WIDGET (main_window), 400, 400);
	
	gtk_window_set_title (GTK_WINDOW (main_window), "File List");
	
	 vbox=gtk_vbox_new (FALSE, 5);
         gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
         gtk_container_add (GTK_CONTAINER (main_window), vbox);
         gtk_widget_show (vbox);
	
	  /* Create a scrolled window to pack the CList widget into */
          scrolled_window = gtk_scrolled_window_new (NULL, NULL);
          gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window),
                                    GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);

          gtk_box_pack_start (GTK_BOX (vbox), scrolled_window, TRUE, TRUE, 0);
          gtk_widget_show (scrolled_window);
	
	 /* Create the CList. */
         clist = gtk_clist_new_with_titles (1, titles);

	
	 gtk_clist_set_column_width (GTK_CLIST (clist), 0, 150);
	
	gtk_container_add (GTK_CONTAINER (scrolled_window), clist);
        gtk_widget_show (clist);
	
	hbox = gtk_hbox_new (FALSE, 0);
        gtk_box_pack_start (GTK_BOX (vbox), hbox, FALSE, TRUE, 0);
        gtk_widget_show (hbox);

   
        button_add = gtk_button_new_with_label ("Add List");

        gtk_box_pack_start (GTK_BOX (hbox), button_add, TRUE, TRUE, 0);

         /* Connect our callbacks to the three buttons */

         g_signal_connect_swapped (G_OBJECT (button_add), "clicked",
                              G_CALLBACK (list_files),
                              clist);

         gtk_widget_show (button_add);

	
	 gtk_widget_show (main_window);

         gtk_main();
    
    return 0;
}

Всичко се компилира успешно но когато натисна бутона показване на листа
в конзолата излиза следното предупреждение:

** (clist-test:9062): WARNING **: Invalid UTF8 string passed to pango_layout_set_text()

Явно има конфликт с UTF8 кодирането. Всякакви идеи и приложения са добре
дошли.

Мерси предварително за отговора

-- 
Vladimir Paskov <vlado-paskov@xxxxxxx>

Attachment: signature.asc
Description: This is a digitally signed message part



 

наши приятели

 

линукс за българи
http://linux-bg.org

FSA-BG
http://fsa-bg.org

OpenFest
http://openfest.org

FreeBSD BG
http://bg-freebsd.org

KDE-BG
http://kde.fsa-bg.org/

Gnome-BG
http://gnome.cult.bg/

проект OpenFMI
http://openfmi.net

NetField Forum
http://netField.ludost.net/forum/

 

 

Linux-Bulgaria.ORG

Mailing list messages are © Copyright their authors.