Advertisement
Guest User

Untitled

a guest
Feb 20th, 2017
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.67 KB | None | 0 0
  1. import tkinter as tk
  2. from tkinter import ttk
  3. from tkinter import scrolledtext
  4.  
  5. def clickMe():
  6. action.configure(text='Hello' + name.get())
  7.  
  8.  
  9.  
  10.  
  11. def radCall():
  12. radSel=radVar.get()
  13. if radSel == 1: win.configure(background=COLOR1)
  14. elif radSel == 2: win.configure(background=COLOR2)
  15. elif radSel == 3: win.configure(background=COLOR3)
  16.  
  17.  
  18.  
  19.  
  20. win =tk.Tk()
  21.  
  22. win.title("Python GUI")
  23.  
  24. win.resizable(0,0)
  25.  
  26. #Bý til ramma inn í glugganum
  27. monty = ttk.LabelFrame(win, text='Monty Python')
  28. monty.grid(column=0, row=0,padx=20, pady=20)
  29.  
  30. #skilgreina liti
  31. COLOR1 = "Blue"
  32. COLOR2 = "Gold"
  33. COLOR3 = "Red"
  34.  
  35.  
  36.  
  37. #Breytur fyrir skruntextabox
  38. scrolW = 30
  39. scrolH = 3
  40.  
  41.  
  42. #Búa til Label
  43.  
  44.  
  45.  
  46. aLabel = ttk.Label(monty,text="Enter a name:")
  47. aLabel.grid(column=0,row=0)
  48.  
  49. bLabel = ttk.Label(monty,text="Choose a number:")
  50. bLabel.grid(column=1,row=0)
  51.  
  52. #bý til takka
  53. action = ttk.Button(monty, text="Click Me!", command=clickMe)
  54. action.grid(column=2,row=1)
  55.  
  56.  
  57. #búa til textabox (Entry)
  58. name = tk.StringVar()
  59. nameEntered = ttk.Entry(monty, width=12, textvariable = name)
  60. nameEntered.grid(column=0, row=1)
  61.  
  62.  
  63. #búa til combobox
  64. number = tk.StringVar()
  65. numberChosen = ttk.Combobox(monty, width=12, textvariable=number, state='readonly') #bara hægt að velja úr boxi
  66. numberChosen['values'] = (1,2,4,42,100) #valmöguleikar í combo boxi
  67. numberChosen.grid(column=1,row=1)
  68. numberChosen.current(0) #til þess að það sé bara hægt að velja niður tölur úr comboboxi
  69.  
  70.  
  71.  
  72. #búa til checkbutton
  73. #Checkbutton1
  74. chVarDis = tk.IntVar() #breyta fyrir takka1
  75. #búa til fyrsta CB
  76. check1 = tk.Checkbutton(monty, text="Disabled", variable=chVarDis, state='disabled') #gerir takkann óvirkan
  77. check1.select() #setur hak í hann þegar hann birtist
  78. check1.grid(column=0, row=4, sticky=tk.W) #birtir takkann á skjánum og ákveður hvar hann birtist
  79.  
  80.  
  81. #Checkbutton2
  82. chVarUn = tk.IntVar()
  83. check2 = tk.Checkbutton(monty, text="Unchecked", variable=chVarUn)
  84. check2.deselect() #Ekkert hak í takkanum þegar hann birtist
  85. check2.grid(column=1, row=4, sticky=tk.W) #birtir takkann á skjánum og ákveður hvar hann birtist
  86.  
  87. #Checkbutton3
  88. chVarEn = tk.IntVar()
  89. check3 = tk.Checkbutton(monty, text="Enabled", variable=chVarEn)
  90. check3.select()
  91. check3.grid(column=2, row=4, sticky=tk.W)
  92.  
  93.  
  94. # Radiobutton
  95. radVar= tk.IntVar()
  96. rad1 = tk.Radiobutton(monty, text=COLOR1, variable=radVar, value=1,command = radCall)
  97. rad1.grid(column=0, row=5, sticky=tk.W)
  98. rad2 = tk.Radiobutton(monty, text=COLOR2, variable=radVar, value=2,command = radCall)
  99. rad2.grid(column=1, row=5, sticky=tk.W)
  100. rad3 = tk.Radiobutton(monty, text=COLOR3, variable=radVar, value=3,command = radCall)
  101. rad3.grid(column=2, row=5, sticky=tk.W)
  102.  
  103.  
  104.  
  105.  
  106. # Scrolltextabox
  107.  
  108. scr = scrolledtext.ScrolledText(monty, width=scrolW, height=scrolH, wrap=tk.WORD)
  109. scr.grid(column=0, columnspan=3)
  110.  
  111.  
  112.  
  113.  
  114. # Búa til ramma með labels í
  115.  
  116. labelsFrame = ttk.LabelFrame(monty, text =' Labels in a Frame') #býr til ramma fyrir labels
  117. labelsFrame.grid(column=0, row=7, padx=20, pady=40) #padx og pady til að fá autt bil í kringum rammann
  118.  
  119. # setja label inn í rammann
  120.  
  121. ttk.Label(labelsFrame, text="Label1").grid(column=0, row=0)
  122. ttk.Label(labelsFrame, text="Label2").grid(column=0, row=1)
  123. ttk.Label(labelsFrame, text="Label3").grid(column=0, row=2)
  124.  
  125. #býr til bil fyrir framan og eftir og fyrir ofan og neðan alla hluti sem eru í þessum ramma
  126. for child in labelsFrame.winfo_children():
  127. child.grid_configure(padx=8, pady=4) #breytur þannig að bilin koma
  128.  
  129.  
  130. # place cursor into name Entry
  131. nameEntered.focus() # lætur bendilinn inn í textaboxið sem heitir nameEntered
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141. win.mainloop() #Start GUI
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement