如何在scrolledwindow中创建固定覆盖?

2024-05-19 06:22:12 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在scrolledwindow中创建固定覆盖? 这是我的密码:

    def create_textview(self):
        frame = Gtk.Frame()
        frame.set_label(os.path.basename(TextViewWindow.temporary(self, widget=None)))

        scrolledwindow = Gtk.ScrolledWindow()
        scrolledwindow.set_hexpand(True)
        scrolledwindow.set_vexpand(True)

        self.textview = Gtk.TextView()
        self.textview.set_editable(True)
        self.textview.connect("key-release-event", self.releaseKeys)
        self.textview.connect("key-press-event", self.key_Return)
        self.textview.connect("key-press-event", self.key_BackSpace)
        self.textview.connect("key-press-event", self.blockedKeys)

        self.textbuffer = self.textview.get_buffer()
        self.OpenFile = otworzplik.OpenFile()

        # Background

        #
        overlay = Gtk.Overlay()

        pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale(
            filename="kibord.png",
            width=500,
            height=160,
            preserve_aspect_ratio=True)

        image = Gtk.Image()
        image.set_from_pixbuf(pixbuf)

        overlay.add_overlay(image)

        overlay.add(self.textview)
        scrolledwindow.add(overlay)
        frame.add(scrolledwindow)

Tags: keyimageselfeventaddtruegtkconnect
1条回答
网友
1楼 · 发布于 2024-05-19 06:22:12
def create_textview(self):
    frame = Gtk.Frame()
    frame.set_label(os.path.basename(TextViewWindow.temporary(self, widget=None)))

    scrolledwindow = Gtk.ScrolledWindow()
    scrolledwindow.set_hexpand(True)
    scrolledwindow.set_vexpand(True)

    self.textview = Gtk.TextView()
    self.textview.set_editable(True)
    self.textview.connect("key-release-event", self.releaseKeys)
    self.textview.connect("key-press-event", self.key_Return)
    self.textview.connect("key-press-event", self.key_BackSpace)
    self.textview.connect("key-press-event", self.blockedKeys)

    self.textbuffer = self.textview.get_buffer()
    self.OpenFile = otworzplik.OpenFile()

    # Obraz tła

    #
    overlay = Gtk.Overlay()

    pixbuf = GdkPixbuf.Pixbuf.new_from_file_at_scale(
        filename="kibord.png",
        width=300,
        height=96,
        preserve_aspect_ratio=True)

    image = Gtk.Image()
    image.set_from_pixbuf(pixbuf)

    # Fixed for fixed positioned overlay widgets
    fixed = Gtk.Fixed()
    overlay.add_overlay(fixed)
    overlay.set_overlay_pass_through(fixed, True)

    # Put fixed overlay
    fixed.put(image, 650, 10)


    # overlay.add(self.textview)
    overlay.add(frame)
    scrolledwindow.add(self.textview)
    frame.add(scrolledwindow)

现在很好,谢谢你的帮助。你知道吗

相关问题 更多 >

    热门问题