dado-6-faces c/ Tkinter "telinha gráfica" o0o0o0
Publicado por Fábio Pupo 01/01/2006
[ Hits: 6.740 ]
É 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
------------------------ 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 #############
Usando for no shell do python =)
Nenhum comentário foi encontrado.
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
firefox nao guarda meus logins nos sites (1)
Instalar debian testing (13) "por cima" do debian 12 (2)
Erro de segmentação «Segmentation fault (core dumped)» ao retornar obj... (1)