Seite 1 von 1

Buttonfarben unter OS X

Verfasst: Samstag 2. September 2017, 20:03
von ChristophS
Guten Abend

Gibt es einen Weg die Buttonfarben (fg,bg) unter OS X einzustellen. Ich habe ziemlich lange gesucht. Die einzige, gefunden Antwort war, dass man das mit ttk erreichen kann, habe aber nicht verstanden wie das gehen soll. :(

Weiss jemand mehr?

Gruss Christoph

Re: Buttonfarben unter OS X

Verfasst: Samstag 2. September 2017, 23:30
von Alfons Mittelmeyer
@ChristophS: Man kann GUI Programme schreiben, die Buttons haben und da kann man natürlich Farben wählen, wie man will. Wenn Du aber Buttonfarben von irgenwelchen Programmen einstellen willst, das geht nicht. Diese Programme stellen selber ein, wie ihre Buttons aussehen sollen.

Ich kann Dir ja einmal ein paar Buttons anbieten:

Code: Alles auswählen

# -*- coding: utf-8 -*-

try:
    import tkinter as tk
except ImportError:
    import Tkinter as tk

class Application(tk.Tk):

    def __init__(self,**kwargs):
        tk.Tk.__init__(self,**kwargs)
        # widget definitions ===================================
        self.button_blau = tk.Button(self,text='blauer Button', fg='white', bg='blue')
        self.button_gelb = tk.Button(self,text='gelber Button', bg='yellow')
        self.button_gruen = tk.Button(self,text='grüner Button', fg='white', bg='green')
        self.button_rot = tk.Button(self,text='roter Button', fg='white', bg='red')
        self.button_blau.pack(fill='x')
        self.button_gelb.pack(fill='x')
        self.button_gruen.pack(fill='x')
        self.button_rot.pack(fill='x')

if __name__ == '__main__':
    Application().mainloop()
Wahrscheinlich nicht, was Du willst oder?

Re: Buttonfarben unter OS X

Verfasst: Sonntag 3. September 2017, 08:35
von Sirius3
@Alfons Mittelmeyer: das funktioniert aber unter OS X nicht.

Re: Buttonfarben unter OS X

Verfasst: Sonntag 3. September 2017, 10:38
von Alfons Mittelmeyer
Sirius3 hat geschrieben:@Alfons Mittelmeyer: das funktioniert aber unter OS X nicht.
Hab es gerade bei stackoverflow gelesen. Das soll aber gehen:

Code: Alles auswählen

import tkinter as tk
from tkinter import ttk

root = tk.Tk()

# background="..." doesn't work...
ttk.Style().configure('green/black.TLabel', foreground='green', background='black')
ttk.Style().configure('green/black.TButton', foreground='green', background='black')

label = ttk.Label(root, text='I am a ttk.Label with text!', style='green/black.TLabel')
label.pack()

button = ttk.Button(root, text='Click Me!', style='green/black.TButton')
button.pack()

root.mainloop()
Quelle: https://stackoverflow.com/questions/152 ... -mac-os%3C

Aber nur der foreground geht, der background auch nicht.

Mit highlightbackground soll in tkinter etwas gehen - aber nicht ttk. Ansonsten bleibt nur Button Klick Animation durch einen Label simulieren.

Re: Buttonfarben unter OS X

Verfasst: Sonntag 3. September 2017, 10:58
von Alfons Mittelmeyer
Und wie sieht es aus mit gtk3+ oder qt5?

Re: Buttonfarben unter OS X

Verfasst: Montag 4. September 2017, 11:32
von ChristophS
Vielen Dank für die Antworten.

@Alphons: Was meinst Du mit qtk3 und qt5?

Re: Buttonfarben unter OS X

Verfasst: Montag 4. September 2017, 12:13
von Melewo
Die erwähnten sind andere GUI-Toolkits.
Du könntest zusätzlich einmal schauen, wie sich diese Tipps umsetzen lassen:

https://stackoverflow.com/questions/183 ... age-border

Re: Buttonfarben unter OS X

Verfasst: Montag 4. September 2017, 13:05
von ChristophS
Danke, ich sehe mir das an.

Christoph

Re: Buttonfarben unter OS X

Verfasst: Dienstag 5. September 2017, 23:37
von __deets__
Wenn du unter OSX entwickelst solltest du dir ggf pyobjc anschauen. Damit kann man native GUIs bauen, die sehen immer noch am besten aus.