Python3 изменяет значение пикселя GdkPixbuf - PullRequest
0 голосов
/ 30 октября 2019

У меня есть Gtk.DrawingArea, где я рисую изображение.

Ниже приведен метод обратного вызова, когда пользователь перемещает мышь вокруг области рисования. Я пытаюсь сделать так, чтобы, удерживая левую кнопку мыши нажатой, изменить цвет пикселей, например, при наведении курсора мыши на белый.

def __on_drawing_area_mouse_motion(self, widget, event):

    # If user is holding the left mouse button
    if self.__left_mouse_button_hold:
        pixbuf = self.__store_dictionary[self.__active_sample_id]['displayed_image']
        offset = int(event.y)*pixbuf.get_rowstride() + int(event.x)*pixbuf.get_n_channels()
        pixel = pixbuf.get_pixels()[offset]
        print(pixel)
        pixel = 0
        self.__w_drawing_area.queue_draw()

Линия печати (пиксель) печатает пиксельзначение интенсивности, как если бы это было изображение в градациях серого ([0-255]), поэтому я назначаю ему 0.

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

Есть идеи?

...