Anfängerproblem

Fragen zu Tkinter.
Antworten
powerpython
User
Beiträge: 8
Registriert: Donnerstag 19. April 2007, 15:38

Hey,
ich habe unten eine Oberfläche erstellt, auf der Oberfläche sind zuerst 4 Buttons, wenn man z.B auf "Modelldefinition" drauf klicken, soll dann zweite Reihe mit wieder fünf Buttons auftauchen. Ich schaffe irgendwie diese Verknüpfung nicht.
kann jmd mir mit paar code helfen.
Danke

Code: Alles auswählen

import sys
from Tkinter import *

#Main Option

layout=Tk()

#Main Option

mainop=Label(layout, text="Main Option", font="Arial 20 bold", height=1, width=10, anchor="w")
mainop.place(relx=0,rely=0,anchor="nw")

modelldef=Button(layout, text="Modell-Definition",font="Arial 20 bold")
modelldef.place(relx=0.02, rely=0.1, anchor="w")

Fahrmanoever=Button(layout, text="   Fahrmanöver   ",font="Arial 20 bold")
Fahrmanoever.place(relx=0.27, rely=0.1, anchor="w")

JobControl=Button(layout, text="   Job-Control   ",font="Arial 20 bold")
JobControl.place(relx=0.52, rely=0.1, anchor="w")

Auswertung=Button(layout, text="   Auswertung   ",font="Arial 20 bold")
Auswertung.place(relx=0.77, rely=0.1, anchor="w")


layout.mainloop()


Code: Alles auswählen

import sys
from Tkinter import *

#Option f¨¹r Modell-Definition
modelldef=Tk()

Allgemeines=Button(modelldef, text=" Allgemeines ",font="Arial 20 bold")
Allgemeines.place(relx=0.01, rely=0.2, anchor="w")

Substrukturauswahl=Button(modelldef, text="Substruktur-\n"+"auswahl",font="Arial 20 bold")
Substrukturauswahl.place(relx=0.22, rely=0.2, anchor="w")

NormF=Button(modelldef, text=" NormF ",font="Arial 20 bold")
NormF.place(relx=0.45, rely=0.2, anchor="w")

Substrukturauswahl1=Button(modelldef, text="Substruktur-\n"+"auswahl",font="Arial 20 bold")
Substrukturauswahl1.place(relx=0.6, rely=0.2, anchor="w")

Testrechnung=Button(modelldef, text="   Testrechnung   ",font="Arial 20 bold")
Testrechnung.place(relx=0.8, rely=0.2, anchor="w")

modelldef.mainloop()
Redprince
User
Beiträge: 128
Registriert: Freitag 22. Oktober 2004, 09:22
Wohnort: Salzgitter
Kontaktdaten:

powerpython hat geschrieben:kann jmd mir mit paar code helfen.
Gern!

Code: Alles auswählen

print [str(i) for i in xrange(10)]

Code: Alles auswählen

import Tkinter as tk
Wenn du noch ein zweites Paar haben möchtest, melde dich!

Sieh dir mal das Manual an..
powerpython
User
Beiträge: 8
Registriert: Donnerstag 19. April 2007, 15:38

vielen Dank!
Bitte schicke mir das zweite Paar!!!

:D
powerpython
User
Beiträge: 8
Registriert: Donnerstag 19. April 2007, 15:38

Hello,
ich habe wieder paar Stunden invesitiert, hat es immer noch nicht geklappt.
Bitte um eine konkretere Hilfe!!
Danke!!
:cry:
Redprince
User
Beiträge: 128
Registriert: Freitag 22. Oktober 2004, 09:22
Wohnort: Salzgitter
Kontaktdaten:

Wie hast du es versucht, wie weit bist du gekommen, was genau funktioniert nicht, wobei genau brauchst du Hilfe?
Benutzeravatar
Mawilo
User
Beiträge: 452
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

Hallo powerpython,

ich habe mal ein kleines Beispiel erstellt, bei dem immer eine neue Zeile mit Buttons generiert wird.

Code: Alles auswählen

import Tkinter as tk

class Mainapp:
    def __init__(self):
        self.root = tk.Tk()
        self.mainframe = tk.Frame(self.root)
        self.mainframe.pack()
        headerframe = tk.Frame(self.mainframe)
        headerframe.pack()
        mainop = tk.Label(headerframe, text="Main Option", font="Arial 12 bold", 
                                            height=1, width=10, anchor="w") 
        mainop.pack(side=tk.LEFT) 

        modelldef = tk.Button(headerframe, text="Modell-Definition",
                                            font="Arial 12 bold",
                                            command=self.addButtons) 
        modelldef.pack(side=tk.LEFT) 

        Fahrmanoever = tk.Button(headerframe, text="   Fahrmanöver   ",
                                            font="Arial 12 bold",
                                            command=self.addButtons) 
        Fahrmanoever.pack(side=tk.LEFT) 

        JobControl = tk.Button(headerframe, text="   Job-Control   ",
                                            font="Arial 12 bold",
                                            command=self.addButtons) 
        JobControl.pack(side=tk.LEFT) 

        Auswertung = tk.Button(headerframe, text="   Auswertung   ",
                                            font="Arial 12 bold",
                                            command=self.addButtons) 
        Auswertung.pack(side=tk.LEFT)
        
        self.root.mainloop()
        
    def addButtons(self):
        newframe = tk.Frame(self.mainframe)
        newframe.pack()
        Allgemeines=tk.Button(newframe, text=" Allgemeines ",font="Arial 12 bold") 
        Allgemeines.pack(side=tk.LEFT) 

        Substrukturauswahl=tk.Button(newframe, text="Substruktur-\n"+"auswahl",
                                                font="Arial 12 bold") 
        Substrukturauswahl.pack(side=tk.LEFT) 

        NormF=tk.Button(newframe, text=" NormF ",font="Arial 12 bold") 
        NormF.pack(side=tk.LEFT)

        Substrukturauswahl1=tk.Button(newframe, text="Substruktur-\n"+"auswahl",
                                                font="Arial 12 bold") 
        Substrukturauswahl1.pack(side=tk.LEFT)

        Testrechnung=tk.Button(newframe, text="   Testrechnung   ",
                                                font="Arial 12 bold") 
        Testrechnung.pack(side=tk.LEFT)
        

if __name__ == '__main__':
    Mainapp()
Du musst natürlich mein Beispiel noch auf deine Bedürfnisse anpassen. Es soll ja nur zeigen, wie ich so etwas lösen würde.
Mawilo
Redprince
User
Beiträge: 128
Registriert: Freitag 22. Oktober 2004, 09:22
Wohnort: Salzgitter
Kontaktdaten:

Wenn du ihm schon den Code an den Kopf wirfst sollte man vielleicht anmerken, dass sich beim Erstellen der Buttons Schleifen anbieten, wenn sich die Buttons nur durch deren Aufschrift unterscheiden..
N317V
User
Beiträge: 504
Registriert: Freitag 8. April 2005, 13:23
Wohnort: München

Ach Mawilo, jetzt wars grad so lustig.

powerpython hat sich mit seinen aktuell 8 Posts hier im Forum bereits nen Namen damit gemacht, dass er um fertige Lösungen bettelt.
Es gibt für alles eine rationale Erklärung.
Außerdem gibt es eine irrationale.

Wie man Fragen richtig stellt
Benutzeravatar
Mawilo
User
Beiträge: 452
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

N317V hat geschrieben:Ach Mawilo, jetzt wars grad so lustig.

powerpython hat sich mit seinen aktuell 8 Posts hier im Forum bereits nen Namen damit gemacht, dass er um fertige Lösungen bettelt.
Naja, deshalb habe ich ja keine fertige Lösung gepostet. :wink: Ich finde aber ein kleines Beispiel immer hilfreicher als lange Erklärungen (kann ja sein, das powerpython doch was lernen möchte - ich glaube eben noch an das Gute im Menschen :D ).
N317V
User
Beiträge: 504
Registriert: Freitag 8. April 2005, 13:23
Wohnort: München

Auf jeden Fall hab ich mich bei der ersten Antwort von Redprince weggeworfen vor Lachen. :lol:
Es gibt für alles eine rationale Erklärung.
Außerdem gibt es eine irrationale.

Wie man Fragen richtig stellt
Redprince
User
Beiträge: 128
Registriert: Freitag 22. Oktober 2004, 09:22
Wohnort: Salzgitter
Kontaktdaten:

Mawilo hat geschrieben:
N317V hat geschrieben:Ach Mawilo, jetzt wars grad so lustig.

powerpython hat sich mit seinen aktuell 8 Posts hier im Forum bereits nen Namen damit gemacht, dass er um fertige Lösungen bettelt.
Naja, deshalb habe ich ja keine fertige Lösung gepostet. :wink: Ich finde aber ein kleines Beispiel immer hilfreicher als lange Erklärungen (kann ja sein, das powerpython doch was lernen möchte - ich glaube eben noch an das Gute im Menschen :D ).
"Lasst uns den Stil vorantreiben, indem wir Denken lehren, nicht Gedachtes!"

Wer nicht mit einem Manual umgehen kann, hat in der Programmiererwelt wenig verloren, warum also bei banalen Problemchen Code posten, wenn kleine Hilfestellungen zum Manual viel mehr bringen - vor allem für die Zukunft?
N317V
User
Beiträge: 504
Registriert: Freitag 8. April 2005, 13:23
Wohnort: München

Redprince hat geschrieben:"Lasst uns den Stil vorantreiben, indem wir Denken lehren, nicht Gedachtes!"
Das hat wohl ein gewisser Volkard gesagt. Ich konnte aber nicht rausfinden, wer das ist/war.
Es gibt für alles eine rationale Erklärung.
Außerdem gibt es eine irrationale.

Wie man Fragen richtig stellt
BlackJack

Ich finde als Quelle einen gewissen Cornelius Gurlitt.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

BlackJack hat geschrieben:Ich finde als Quelle einen gewissen Cornelius Gurlitt.
Und ich finde als ersten Suchtreffer dazu bei Google diesen Thread....
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten