Повторная привязка «выбрать все» в виджете «Текст»

Я работаю с виджетом «Текст», и у меня проблема с ярлыками старой школы, которые использует Tk.

То есть:

Выбрать все: Ctrl + / vs Ctrl + a
Вырезать: Ctrl + w vs Ctrl + x
Копировать: Meta + w vs Ctrl + c
Вставить: Ctrl + y vs Ctrl + v

В Windows все они работают, кроме Ctrl + a.

1) Можно ли перенаправить привязки, поэтому .bind ('') вызовы уже связаны Ctrl + /?

2) Я пробовал «выбрать все»:

txt_text.bind('<Control-a>', self.ctext_selectall)

Где:

def ctext_selectall(self, callback):
    """Select all text in the text widget"""
    self.txt_text.tag_add('sel', '1.0', 'end')

Но это не работает , так как по умолчанию работает Ctrl + a (курсор идет в начало). Он работает с каким-то другим, несвязанным письмом. У меня есть записи в БД с уникальными идентификаторами. Например список идентификаторов: 1, 2, 3, 4, 5, 6, 7, 8, 9 Мне нужно выбрать, например, запись №6 и запись 2 перед №6 ...

У меня проблема с выбором Union модели EDM. У меня есть записи в БД с уникальными идентификаторами. Например список идентификаторов: 1, 2, 3, 4, 5, 6, 7, 8, 9

Мне нужно выбрать, например, запись №6 и запись 2 перед №6 и 2 записи после №6. В результате выбора должно быть 4,5,6,7,8

Я сделал это следующим образом:

public IQueryable<photos> GetNextPrev(Int64 photoid, string userlogin)
    {
        var p1 = (from m in db.photos
                 where m.id < photoid && m.userlogin == userlogin
                 orderby m.id descending
                 select m).Take(2).Skip(0);
        var p2 = (from m in db.photos
                  where m.id >= photoid && m.userlogin == userlogin
                  orderby m.id descending
                  select m).Take(3).Skip(0);
        return (p1.Union(p2));
    }

Но порядок не такой, как в примере ...

Спасибо за помощь!

5
задан Justin Morgan 3 May 2011 в 15:11
поделиться