dado-6-faces c/ Tkinter "telinha gráfica" o0o0o0

Publicado por Fábio Pupo 01/01/2006

[ Hits: 6.670 ]

Download xdado_tkinter.tar.gz




É o dado que postei anteriormente só que agora usando Tkinter. Vale a pena dar uma olhada para quem quer usar esse módulo em python. Está funcionando para jogar o dado e dá para ver a soma mas ainda não terminei tudo falta configurar os menus e tem um espaco na telinha que queria colocar um desenho de um dado !! quem quiser se divertir ta aeh.
[]'s

  



Esconder código-fonte

------------------------ xdado.py


#!/usr/bin/env python
#-*- coding: iso-8859-1 -*-

#   contato: fooues@gmail.com - Fábio Pupo
#   
#   Além desse arquivo, tem també o d6.py que é o 
#   dado-6-faces.py, que já havia postado no site, com
#   algumas alteracões.


from Tkinter import *
import d6

class MainApp:
   def __init__(self, parent):
      
         
      parent.geometry("230x150")
      parent.title("XDado -- 0.1")
            
      # Main Frame
      """ Constante do Frame"""
      f_padx = "3m"
      f_pady = "2m"
      f_ipadx = "3m"
      f_ipady = "1m"
      """ ------------------------- """
      self.frm = Frame(parent, borderwidth = 6, height = 45, width = 108)#, bg = "red")
      self.frm.grid(row = 0, column = 0)
            
      # Menu Bar
      menu = Menu(parent)
      parent.config(menu = menu)
      filemenu = Menu(menu)
      menu.add_cascade(label = "File", menu = filemenu)
      filemenu.add_command(label = "New", command = ' ' )
      filemenu.add_command(label = "Exit", command = parent.quit)
      
      helpmenu = Menu(menu)
      menu.add_cascade(label = "Help", menu = helpmenu)
      helpmenu.add_command(label = "Info", command = self.run_info)
            
      
      # Buttons
      """ Constante dos buttons """
      b_width = 10
      b_padx = "2m"
      b_pady = "1m"
      """ ----------------------------- """
            
      self.btn_d6 = Button(self.frm, text = "Rolar", command = self.btn_d6_click)
      self.btn_d6.configure(width = b_width, padx = b_padx, pady = b_pady)
      self.btn_d6.focus_force()
      self.btn_d6.pack()#grid(row = 1, column = 0)
      
      self.btn_exit = Button(self.frm, text = "Sair", command = parent.quit)
      self.btn_exit.configure(width = b_width, padx = b_padx, pady = b_pady)
      self.btn_exit.pack()#grid(row = 2, column = 0)
      
      # Frames   
      self.frm_txt = Frame(parent, borderwidth = 6, height = 32, width = 100)#, bg = "blue")
      self.frm_txt.grid(row = 1, column = 0)
      self.frm_block = Frame(parent, borderwidth = 6, height = 90, width = 78)#, bg = "yellow")
      self.frm_block.grid(row = 0, column = 1)
      
      # TextBoxes
      self.txt_name = Entry(self.frm, width = 11)
      self.txt_name.pack()#grid(row = 0, column = 0)
   
      self.pic = Canvas(self.frm_block, height = 78, width = 78)
      self.pic.pack()   
            
   def btn_d6_click(self):
      if (self.txt_name.get() == "" or self.txt_name.get() == '0'):
         self.x = 0
         print 'Insira algum valor maior que zero na caixa de texto!!!'
      else:
         self.x = int(self.txt_name.get())
      self.ver= d6.dado(self.x)
      self.frm.lbl_ver = Label(self.frm_txt, text = "Total: %s" % str(self.ver))#"Total: " + str(self.ver))
      self.frm.lbl_ver.grid(row = 3, column = 0)
      
   def run_info(self):
      self.frm_info = Toplevel()
      self.lbl_phone = Entry(self.frm_info, text = "ahuehuaheuhe")
      self.lbl_phone.pack()
   
      
      
root = Tk()

mainapp = MainApp(root)

root.mainloop()


------------------------------------------------------------
-------------------------------- d6.py ------------------------

"""#!/usr/bin/python"""

############### -- Dado 6 faces V0.1 -- ##########################
# Rolador de dados de 6 faces para RPG ou qualquer outro jogo (criei pensando em GURPS)  #
# a pessoa informa a quantidade de dados de 6 lados que deseja jogar,                      #
# ele rola os dados e informa/retorna a soma total dos resultados                    #
# criado por >>>> be-e  fapodrigues@gmail.com <<< duvidas, sugestoes, criticas           # #######################################################


import random
import os

def dado (number):
   
     fvalue = 0
     os.system('clear')
     for qts in range(0,number):
             value = random.randint(1,6) 
             fvalue = fvalue + value
             print value
                  
     return fvalue


#### não uso essa parte para esse programa ... mas tá aeh tbém
def jogar():
   global y
   y = 0
   try:
      x = input ('Quantos dados deseja jogar? ')
   except: x = 0                            
   
   y = dado(x)
   print 'A soma foi de >>> %d' % (y)

#jogar()

########## THAT'S ALL FOLKS #############


Scripts recomendados

Calculadora de Operações Básicas

Controle Remoto a Area de Trabalho

Lista Ligada em Python usando Classes

Tabuada Livre

Par ou Impar em Python


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts