Verwenden Sie TKinter in einem vorhandenen FensterPython

Python-Programme
Anonymous
 Verwenden Sie TKinter in einem vorhandenen Fenster

Post by Anonymous »

Ich habe ein vorhandenes offenes Fenster, das von SDL 2 in C/C ++ erstellt wurde. Ich möchte, dass der Prozess ein Python-Skript (mit Boost/Python) aufruft, um einige GUI-Elemente hinzuzufügen.

Code: Select all

import sys
import sdl2
import sdl2.ext

import tkinter as tk
from tkinter import *

# Initialize SDL2
sdl2.ext.init()

# Set up the window
window_width = 800
window_height = 600
window_title = "SDL2 Window"
window = sdl2.ext.Window(window_title, size=(window_width, window_height))

window.show()

# Get SDL handle for the window
wminfo = sdl2.SDL_SysWMinfo()
sdl2.SDL_VERSION(wminfo.version)

window_id = sdl2.SDL_GetWindowWMInfo(window.window, wminfo)
print(wminfo.info.win.window)

#tkinter
The tkinter code examples mentioned below come here
Betrachten Sie https://docs.python.org/3/library/tkint ... tkinter.tk, ich sehe, dass



id Ausdruck des folgenden Ausdrucks einer Fenster-ID ähnlich wie window_id < /code> oben.

Code: Select all

root = tk.Tk()
tk_id = root.winfo_id()
Ausführen von child = tk.tk (use = str (wMinfo.info.win.Window)) lässt Python ohne Ausnahme beenden. VS Code schreibt Server [1] unerwartet getrennt Aber ich denke nicht, dass dies der X11 -Server ist, sondern der Debugger. Vermisse ich hier etwas Einfaches?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post