Fensterumrandung

Fragen zu Tkinter.
Antworten
N17R0

Hiho,
ist es unter Tkinter möglich, die Umrandung von Fenstern zu entfernen? Also das Teil, wo der 'Minimieren', 'Maximieren' und 'Schließen' Button drauf is.

Greetz
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Hi. Suchst du etwas wie das hier?

Milan
N17R0

so ähnlich, aber ich will nich nur die buttons da wegbekommen, sondern den ganzen rand, also auch das, wo der fenstername drin steht und das icon drauf is und so
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hallo NR17R0

Du musst die 3 Modi, welche im Skript
angegeben sind einzeln ausprobieren.
Das heisst, wenn Du Modus 1 testen
willst müssen die Modi 2 und 3 aus-
dokumentiert sein.

Für ein Fenster ohne Rahmen und Titel
brauchst Du Modus 3 zu aktivieren.

Wichtig hierfür ist folgende Methode:


topwindow.overrideredirect(TRUE)


OK! Gruss wuf :wink:
Take it easy Mates!
N17R0

Super, THX! Funktionuddelt

Kann man auch irgendwie einstellen, dass man das Fenster verschieben kann, wenn man auf ne Fläche klickt, wo kein Widget ist?

Greetz & Thx
Benutzeravatar
wuf
User
Beiträge: 1529
Registriert: Sonntag 8. Juni 2003, 09:50

Hallo N17R0

Willkommen im Forum.

Hier ist der Code mit dem das rahmenlose
Fenster an eine andere Stelle katapultiert
werden kann. Die Aktion wird mit einem Klick
der linken Maustaste auf das rahmenlose
Fenster ausgelöst:

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: UTF-8 -*-
from Tkinter import*

def RepositionWindow(event):
	xpos   = 300
	ypos   = 300
	topwindow.wm_geometry("+%d+%d" % (xpos,ypos))

# Erzeugt ein Hauptfenster und initialisiert Tkinter
root = Tk()

# Erzeugt ein zusätzliches Fenster, welches zum root-Fenster gehört
topwindow = Toplevel(root,bd=2,relief='raised')
topwindow['bg'] = 'steelblue3'
topwindow.bind('<Button-1>', RepositionWindow)


#~~ Hier sind die drei Modi die Du einmal ausprobieren kannst
#1. Disabled grösser/kleiner Icon
#topwindow.resizable(FALSE,FALSE)

#2. Entfernt alle Icons bis auf 'X'
#   und das Fenster bleibt dass oberste
#   bis es geschlossen wird
#topwindow.transient(root)

#3. Das Fenster hat keine Titelleiste
#   und Rahmen
topwindow.overrideredirect(TRUE)

root.mainloop()
Gruss wuf :wink:
Take it easy Mates!
N17R0
User
Beiträge: 53
Registriert: Samstag 6. März 2004, 23:41

THX!
werd gleich außprobieren, sobald ich mit dem pc meiner schwester fertig bin ;)
Antworten