2010-11-07 55 views

回答

2

覆盖这种行为可能会混淆用户。但是,如果你真的想,有两种可能性,我可以看到:

要么使IconView相信Ctrl键总是按:

def force_ctrl(iv, ev): ev.state |= gtk.gdk.CONTROL_MASK 
iconview.connect('key-press-event', force_ctrl) 
iconview.connect('button-press-event', force_ctrl) 

或者你可以尝试自己实施的选择行为,事如:

def clicked(iv, ev): 
    p = iv.get_path_at_pos(int(ev.x), int(ev.y)) 
    if not p is None: 
     if iv.path_is_selected(p): 
      iv.unselect_path(p) 
     else: 
      iv.select_path(p) 
    return True # make the IconView ignore this click 
iconview.connect('button-press-event', clicked)