Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/120: Рейтинг темы: голосов - 120, средняя оценка - 4.53
29 / 29 / 0
Регистрация: 31.01.2020
Сообщений: 181

Перетаскивание квадрата мышью

30.12.2020, 11:30. Показов 24002. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Напишите программу, которая которая средствами Pygame создает окно 300×300 пикселей, в левом верхнем углу которого при старте программы появляется зеленый квадрат со стороной 100 пикселей.

Его можно перетаскивать мышью (при нажатии левой кнопкой за любую часть квадрат захватывается, при отжатии — отпускается).

Важно: относительное положение квадрата и курсора мыши сохраняется, то есть если мы схватили за центр, то перетаскиваем тоже за центр.
Миниатюры
Перетаскивание квадрата мышью  
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
30.12.2020, 11:30
Ответы с готовыми решениями:

Перетаскивание символа мышью
Может быть кто-то знает, как именно сделать перетаскивание мышкой символа или слова. Скажем можено перетащить слово в другое место на форме...

Перетаскивание блоков мышью
Здравствуйте, не знаете, как сделать перелистывание как в гугле или вк? Ну когда мышкой можно таскать блоки только в рамках div? я знаю про...

Перетаскивание компонента мышью
как сделать перетаскивание компанента с помощью мышки? я сделал,но компанент висит от мышки на расстояние можно код,если не трудно

3
1 / 1 / 0
Регистрация: 14.09.2020
Сообщений: 15
02.01.2021, 20:33
Яндекс.лицей? Тоже интересно, как это задание делать
0
5 / 5 / 0
Регистрация: 24.06.2020
Сообщений: 1
05.01.2021, 22:45
Я так сделал
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
import pygame
 
if __name__ == '__main__':
    pygame.init()
    pygame.display.set_caption('Перетаскивание')
    size = width, height = 300, 300
    screen = pygame.display.set_mode(size)
 
    running, moving = True, False
    x, y = 0, 0
    x_old, y_old, x_new, y_new = 0, 0, 0, 0
    while running:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                running = False
            if event.type == pygame.MOUSEBUTTONDOWN and event.button == 1:
                if x < event.pos[0] < x + 100 and y < event.pos[1] < y + 100:
                    moving = True
            if event.type == pygame.MOUSEMOTION:
                if moving:
                    x_new, y_new = event.rel
                    x, y = x + x_new, y + y_new
            if event.type == pygame.MOUSEBUTTONUP and event.button == 1:
                moving = False
 
        pygame.draw.rect(screen, (0, 255, 0), (x, y, 100, 100))
 
        pygame.display.flip()
        screen.fill((0, 0, 0))
    pygame.quit()
5
67 / 64 / 3
Регистрация: 02.11.2019
Сообщений: 227
12.01.2021, 19:59
lepexey, работает!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.01.2021, 19:59
Помогаю со студенческими работами здесь

Перетаскивание контролов мышью
Нужно по нажатию мыши на элементе перетаскивать контрол(элемент) за курсором.

Перетаскивание объекта мышью
Добрый вечер появилась такая проблема: объекты не реагируют нужно на нажатие левой клавиши мыши, хотя в коде это (вроде) реализовано ...

Перетаскивание мышью компонента pictureBox
собственно говоря сам вопрос указан в теме: как сделать так чтобы можно было перетаскивать мышью pictureBox1 на c# пожалуйста по...

Перетаскивание графических объектов мышью
Задание: С помощью компонента PictureBox на палитре компонентов создайте на форме три фигуры: жёлтый прямоугольник со скругленными...

Перетаскивание линий на TCanvas, мышью
Посоветуйте пожалуйста, как можно реализовать следующую задачу: например, мы нарисовали линию на TCanvas, затем хотим по нажатию мыши...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru