我想在gtk+中创建按钮数组。所以,如何修改“gtkWidget*button”来创建按钮数组。我已将声明修改为“gtkWidget(*button)[20]”,并在下面的代码中使用了此按钮。但是,它显示出一个错误。”从类型“struct GtkWidget*”分配给类型“struct GtkWidget*[20]时,类型不兼容”

gtkWidget (*button)[20];
static char *values[100] =

 {  "127.0.0.1",   "Idle",
 "192.168.73.129", "Idle",
 "192.168.73.130", "Idle",
 "192.168.73.131", "Idle",
 "192.168.73.132", "Idle",
 "192.168.73.129", "Idle",
 "192.168.73.131", "Idle", };

for(i=0; i < 6; i++) {
for( j=0; j < 2; j++) {
  button1[pos] = gtk_button_new_with_label(values[pos]);
  gtk_table_attach_defaults(GTK_TABLE(table), button1[pos], j, j+1, i+1, i+2 );
  pos++;
} }

最佳答案

gtkWidget (*button)[20];这是无效的内部赋值,就像‘struct GtkWidget *[20]’表示数组下标指针。
以简单的方式创建按钮数组,如

GtkWidget *buttons[3][3];
  for (i=0;i<3; i++)
    for (j=0;j<3; j++)
          buttons[i][j] = gtk_button_new ();

关于c - 如何在gtk +中创建按钮数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22110534/

10-11 22:38