Форум программистов, компьютерный форум, киберфорум
Python: Tkinter
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/15: Рейтинг темы: голосов - 15, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 18.07.2019
Сообщений: 2

Выделение строки Listbox при наведении курсора

18.07.2019, 23:35. Показов 3313. Ответов 3

Студворк — интернет-сервис помощи студентам
Всем привет. Подскажите как можно сделать так, чтобы в Listbox, под курсором мыши выделялась строка. Без клика по ней.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.07.2019, 23:35
Ответы с готовыми решениями:

Выделение строки ListBox при наведении курсора
Добрый вечер. Подскажите как можно сделать так, чтобы в ListBox, под курсором мыши выделялась строка. Без клика по ней.

Выделение строки Listbox при наведении
Собственно, как при наведении мыши на произвольную строку выделить ее? И как реализовать прокрутку строк мышью? Может есть у кого...

Выделение картинки при наведении курсора
Я создаю игру (пытаюсь). Решил реализовать выделение картинки при наведении курсора. Картинка выполняет роль кнопки. Я также сделал вторую...

3
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,300
19.07.2019, 00:19
Нашелся такой класс

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
from tkinter import *
 
 
class CustomListBox(Listbox):
 
    def __init__(self, master=None, *args, **kwargs):
        Listbox.__init__(self, master, *args, **kwargs)
 
        self.bg = "white"
        self.fg = "black"
        self.h_bg = "#eee8aa"
        self.h_fg = "blue"
 
        self.current = -1  # current highlighted item
 
        self.fill()
 
        self.bind("<Motion>", self.on_motion)
        self.bind("<Leave>", self.on_leave)
 
    def fill(self, number=15):
        """Fills the listbox with some numbers"""
        for i in range(number):
            self.insert(END, i)
            self.itemconfig(i, {"bg": self.bg})
            self.itemconfig(i, {"fg": self.fg})
 
    def reset_colors(self):
        """Resets the colors of the items"""
        for item in self.get(0, END):
            self.itemconfig(item, {"bg": self.bg})
            self.itemconfig(item, {"fg": self.fg})
 
    def set_highlighted_item(self, index):
        """Set the item at index with the highlighted colors"""
        self.itemconfig(index, {"bg": self.h_bg})
        self.itemconfig(index, {"fg": self.h_fg})    
 
    def on_motion(self, event):
        """Calls everytime there's a motion of the mouse"""
        index = self.index("@%s,%s" % (event.x, event.y))
        if self.current != -1 and self.current != index:
            self.reset_colors()
            self.set_highlighted_item(index)
        elif self.current == -1:
            self.set_highlighted_item(index)
        self.current = index
 
    def on_leave(self, event):
        self.reset_colors()
        self.current = -1
 
 
if __name__ == "__main__":
    root = Tk()
    CustomListBox(root).pack()
    root.mainloop()
1
0 / 0 / 0
Регистрация: 18.07.2019
Сообщений: 2
19.07.2019, 22:44  [ТС]
Благодарю за ответ, пока нет возможности посмотреть код в работе, хотелось бы узнать функциональное ли это выделение или только меняет цвет item'а?
0
1293 / 677 / 367
Регистрация: 07.01.2019
Сообщений: 2,300
19.07.2019, 22:54
Цитата Сообщение от Francois Grigor Посмотреть сообщение
или только меняет цвет item'а
Только меняет цвет
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.07.2019, 22:54
Помогаю со студенческими работами здесь

Выделение текста при наведении курсора
Здравствуйте. Я не совсем уверен, что пишу на нужную ветку форума (не уверен, что это js), поправьте, если я ошибся. Я хочу реализовать...

WrapPanel. Убрать выделение при наведении курсора
Добрый вечер, форумчане. Заранее хочу извиниться за столь глупый вопрос, но какое свойство WrapPanel отвечает за то, чтобы убрать выделение...

Убрать выделение кнопки при наведении курсора
Убрать выделение кнопки при наведении курсора C#

Как убрать выделение кнопки при наведении курсора?
На форме есть обычная кнопка и при наведении на нее курсора кнопка не должна никак выделяться (должна остаться в прежнем состоянии), но она...

Выделение соседних элементов списка при наведении курсора
Всем привет) помогите советом. Есть меню реализованное с помощью списка (ul), элементы меню разделяются вертикальными слешами...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru