Tkinter: Scrollbar erstellen?

Hey Leute!

Ich habe nochmal eine Frage.

Ich wollte für mein erstes GUI-Projekt in Python eine Scrollbar hinzufügen. Ich habe allerdings keine Ahnung, wie ich dass angehen soll.

Es wäre nett, wenn mir das jemand mithilfe meines Codes erklären könnte. 😄

PS.: Ja, ich weiß, dass der Code ziemlich chaotisch und optimierungsfähig mit OOP ist. 😄

from tkinter import *
from functools import partial
import time

quests = [
  'first_quest',
  'second_quest',
  'third_quest',
  'fourth_quest'] fenster = Tk() fenster.title('MiniQuiz')
fenster.geometry('800x800')

def welcome(sentence, quest1, quest2, quest3, quest4, result1, result2, result3, result4):
  question = Label(text=sentence)
  question.config(width=1000)
  question.pack()
  a_button = Button(text=quest1, command=result1)
  a_button.pack()
  b_button = Button(text=quest2, command=result2)
  b_button.pack()
  c_button = Button(text=quest3, command=result3)
  c_button.pack()
  d_button = Button(text=quest4, command=result4)
  d_button.pack()

def counter(punkte):
  punktestand = Label(text='Punktestand:')
  counter = Label(fenster, text= punkte)
  punktestand.pack(anchor=NW)
  counter.pack(anchor=NW)

def right():
  output = Label(text='Richtig!')
  output.pack()

  for item in quests:
    if 'first_quest' == quests[0]:
      quests.remove('first_quest')
      second_quest()
    elif 'third_quest' == quests[0]:
      quests.remove('third_quest')
      fourth_quest()

def right2():
  output = Label(text='Richtig!')
  output.pack()

  for item in quests:
    if 'second_quest' == quests[0]:
      quests.remove('second_quest')
      third_quest()

def final():
  output = Label(text= 'Du hast gewonnen! Herzlichen Glückwunsch')
  output.pack()

def wrong():
  output = Label(text='Leider falsch! Viel Glück beim nächsten mal!')
  output.pack()

def first_quest():
  welcome('BEVOR es losgeht: Du kannst einen Button nur einmal anklicken, machst du es öfters kannst du nicht mehr gewinnen! ' 'Frage 1: Was ist das größte Bundesland Deutschlands?', 'Bayern', 'Niedersachsen', 'Nordrhein Westfahlen', 'Schleswig-Holstein', right, wrong, wrong, wrong)

def second_quest():
  counter(1)
  welcome('Frage 2: Welches Atom ist am einfachsten Aufgebaut?', 'Sauerstoff', 'Wasserstoff', 'Helium', 'Atome unterscheiden sich nicht vom Aufbau', wrong, right2, wrong, wrong)

def third_quest():
  counter(2)
  welcome('Frage 3: Welches Spiel hat 1993 die Videospielszene mit seiner 3D Optik "Revolutioniert" ?', 'Counter Strike Source', 'Half-Life', 'Doom', 'Call Of Duty', wrong, wrong, right, wrong)

def fourth_quest():
  counter(3)
  welcome('Frage 4: Wie hieß das erste Lebewesen, welches von Menschen in die Umlaufbahn der Erde befördert wurde?', 'Bruno', 'Neil Armstrong', 'Michael Collins', 'Laika', wrong, wrong, wrong, final)

def winner():
  counter(4)
  output = Label(fenser, text='Du hast gewonnen!')
  output.pack()

first_quest()
fenster.mainloop()
Computer, Internet, programmieren, Python, Scrollbar, Tkinter
Python Ladebalken funktioniert nicht?

Hi,

Ich habe mit Python einen Ladebalken für ein kleines GUI erstellt. Dieser Ladebalken soll anzeigen wieviele Dateien schon Kopiert wurden. Wenn ich den Ladebalken herausnehme läuft alles. Wenn ich ihn jedoch einfüge kommen fehlermeldungen und die Dateien werden manchmal nicht korrekt Kopiert. Ich komme mitleiweile nicht mehr weiter und hoffe dass mir hier einer helfen kann.

Lg McCrafterIV

Fehlermeldung:

"C:\Users*\PycharmProjects\MakeBackup\venv\Scripts\python.exe" "C:/Users/*/PycharmProjects/MakeBackup/main.py"

Exception in Tkinter callback

ERROR! Cannot create folder.

ERROR! Cannot copy files.

ERROR! Cannot copy files.

ERROR! Cannot copy files.

Traceback (most recent call last):

File "C:\Users****\AppData\Local\Programs\Python\Python36-32\lib\tkinter__init__.py", line 1702, in __call__

return self.func(*args)

File "C:/Users//PycharmProjects/MakeBackup/main.py", line 112, in <lambda>

save_1_button = Button(fenster, text="Save", command=lambda: save.savedata())

File "C:\Users****\PycharmProjects\MakeBackup\save.py", line 40, in savedata

pb = ttk.Progressbar(fenster, orient='horizontal', length=300, mode='determinate', maximum=line, value=saved)

File "C:\Users****\AppData\Local\Programs\Python\Python36-32\lib\tkinter\ttk.py", line 1014, in __init__

Widget.__init__(self, master, "ttk::progressbar", kw)

File "C:\Users****\AppData\Local\Programs\Python\Python36-32\lib\tkinter\ttk.py", line 559, in __init__

tkinter.Widget.__init__(self, master, widgetname, kw=kw)

File "C:\Users****\AppData\Local\Programs\Python\Python36-32\lib\tkinter__init__.py", line 2296, in __init__

(widgetName, self._w) + extra + self._options(cnf))

_tkinter.TclError: expected floating-point number but got "

"

Process finished with exit code 0

Hier mein Quellcode:

https://gist.github.com/McCrafterIV/682f23b2962153beb7b640d304548dac

Error, Python, ladebalken, GUI, Tkinter
Python Tkinter Punkte auf Kreis erstellen?

https://images.gutefrage.net/media/fragen/bilder/python-tkinter-punkte-auf-kreis-erstellen/0_big.jpg?v=1515952309796"/>

Ich möchte gerne Punkte auf einem Kreis erzeugen, die in immer gleichen Abständen zueinander sind und die Menge der Punkten vareabel ist. Ich nutze dafür Python und Tkinter:

Mein code dazu ist folgender:

from tkinter import *

import math

win=Tk()

win.title("Kreis")

win.geometry("1500x850")

win.configure(background="white")

leinwand = Canvas(win, width=1500, height=850, bg="white")

leinwand.place(x=100, y=100)

r1=100

p=8

wgrd= 360/float(p)

leinwand.create_oval(700-float(r1), 150-float(r1), 700+float(r1), 150+float(r1), fill="white", width=1, outline="black")

for i in range (0,int(p)):

   xp= (float(r1) * math.cos(wgrd*i))+700

   yp= (float(r1) * math.sin(wgrd*i))+150

   leinwand.create_oval(int(xp)-10, int(yp)-10, int(xp)+10, int(yp)+10, fill="red", width=1, outline="red")

Leider haben die roten Punkte bei mir nicht den gleichen Abstand und ich weiß nicht warum. Ich hoffe jmd. kann mir helfen :)

Danke im Voraus! :)

Bild zum Beitrag
Computer, Mathematik, programmieren, Geometrie, Python, GUI, Tkinter

Meistgelesene Beiträge zum Thema Tkinter