Seite 1 von 1

Tkinter/Tkcalendar

Verfasst: Sonntag 23. Juni 2019, 02:27
von yu_gee
Guten Abend,

ich hätte da eine Frage. Ich versuche gerade über Python ein Programm zuschreiben, welches eine Art Pflegeübergabe-Programm
werden sollte. Dafür benötige ich einen Kalender. Diesen habe ich in tkcalendar auch gefunden. Meine Idee ist es nun:
Einen Tag auszuwählen, anschließend die Schicht(früh,spät) zuwählen und dann habe ich einige Textfenster eingebaut in denen
ich dann bestimmte Einträge machen kann. Die Textfenster müssen sich also an die jeweiligen Tage knüpfen. Heißt, wenn ich das
ganze speichere, soll man den tag erneut auswählen können, mit den jeweiligen Einträgen.

Ich weiß, ist fürs erste zuviel. Ich bin neu in der Programmierwelt und habe mit einigen Basics und nun tkinter noch nicht ganz soviel
Erfahrungen. Ich bin dabei mich einzuarbeiten, in dem ich dieses Programm schreibe.

Meine Frage also zumindest erstmal: Wie krieg ich Calendar dazu einen Befehl auszuführen, nachdem ich ein Datum ausgewählt habe?
Es war schon ein wenig tricky überhaupt in Sublime Text das Modul tkcalendar über Python einzubinden, aber leider gibt es nicht soviel Info`s zu dem Modul.

Ich hoffe ihr könnt mir weiterhelfen, bis jetzt hab ich alles im Internet gefunden, aber jetzt weiß ich nicht weiter.
mfg yu_gee

Re: Tkinter/Tkcalendar

Verfasst: Sonntag 23. Juni 2019, 09:24
von __deets__
Ich verstehe nicht, was du tun willst. Warum muss da “ein Befehl” ausgeführt werden von tkcalendar?

Re: Tkinter/Tkcalendar

Verfasst: Sonntag 23. Juni 2019, 11:12
von __blackjack__
@yu_gee: Das Modul hat Dokumentation zu den Optionen, Methoden, und virtuellen Ereignissen auf der „Python Package Index“-Seite, auf der Github-Projektseite, und auf readthedocs, was von den beiden anderen Quellen aus verlinkt ist. Generell zu Ereignissen hat Effbot's Tkinter-Buch (online frei lesbar) etwas im Abschnitt „Events and Bindings“.

Re: Tkinter/Tkcalendar

Verfasst: Sonntag 23. Juni 2019, 22:52
von yu_gee
@deets Naja standardmäßig ist es so, dass wenn ich einen Tag ausgewählt habe, ich in der Console ein Feedback mit dem ausgewählten Datum erhalte. Ich möchte nun, dass sich stattdessen über eine Funktion z.B.: ein neues Fenster öffnet oder der Inhalt einer außenstehenden Datei öffnet.
@__blackjack__ ah natürlich. die Python Package Index-Seite. Die hab ich vor lauter "googlen" irgendwie schon wieder vergessen. Danke sehr.

Re: Tkinter/Tkcalendar

Verfasst: Sonntag 17. November 2019, 15:16
von rookie_alex
habe mal das Beispiel aus der Doku so modifiziert, dass eine Funktion aufgerufen wird, die natürlich beliebigen inhalt haben kann und damit beliebige Aktionen auslösen kann.
Hoffe, habe den Inhalt der Frage richtig verstanden.

Code: Alles auswählen

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

from tkcalendar import Calendar, DateEntry
def do_anything():
    print("hier können beliebige Aktionen folgen")

def example1():
    def print_sel():
        print("gewähltes Datum: ",cal.selection_get())
        do_anything()

    top = tk.Toplevel(root)

    cal = Calendar(top, font="Arial 14", selectmode='day', locale='en_US',
                   cursor="hand1", year=2019, month=11, day=17)

    cal.pack(fill="both", expand=True)
    ttk.Button(top, text="ok", command=print_sel).pack()


root = tk.Tk()
ttk.Button(root, text='Calendar', command=example1).pack(padx=10, pady=10)

root.mainloop()

VG alex