Simples relógio digital
Publicado por Sandro Marcell 08/09/2008
[ Hits: 8.072 ]
Homepage: http://sanmarcell.wordpress.com
Simples script em Tcl/Tk que mostra um relógio digital com data e dia da semana.
#!/usr/bin/wish # # Simples relogio digital (com data) em Tcl/Tk. # Sandro Marcell (sandro_marcell@yahoo.com.br) # # Obs.: # - As horas sao mostradas no formato 24h; # - O relogio ainda apita! # # Mais detalhes: # man tk # tclhelp # Codificacao padrao: encoding system utf-8 # Procedimento principal que formata a data, hora e dia: proc _Principal_ {} { # Dia da semana por extenso: switch [clock format [clock seconds] -format "%w"] { 0 { set dia "Domingo" } 1 { set dia "Segunda-feira" } 2 { set dia "Terça-feira" } 3 { set dia "Quarta-feira" } 4 { set dia "Quinta-feira" } 5 { set dia "Sexta-feira" } 6 { set dia "Sábado" } } # Cores diferentes para cada dia: switch -glob $dia { Dom* { set cor "#31a90b" } Seg* { set cor "#be1b0b" } Ter* { set cor "#ebe80b" } Qua* { set cor "#f8700b" } Qui* { set cor "#1c70e3" } Sex* { set cor "#b6a8c1" } Sáb* { set cor "#d8c908" } } # Mes por extenso: switch [clock format [clock seconds] -format "%m"] { 01 { set m "Janeiro" } 02 { set m "Fevereiro" } 03 { set m "Março" } 04 { set m "Abril" } 05 { set m "Maio" } 06 { set m "Junho" } 07 { set m "Julho" } 08 { set m "Agosto" } 09 { set m "Setembro" } 10 { set m "Outubro" } 11 { set m "Novembro" } 12 { set m "Dezembro" } } # Data: set d [clock format [clock seconds] -format "%d"] # Ano: set a [clock format [clock seconds] -format "%Y"] # Hora set h [clock format [clock seconds] -format "%T"] # Reconfigurando label's: .clock configure -text $h -font {helvetica 14 bold} .data configure -text "$d de $m de $a" .dia configure -text $dia -background $cor # Se for HH:MM:SS em ponto, apite! if {[regexp {(([01][0-9]|2[0-3]):00:00)} $h]} { puts "\a" } # Aguardar 1 segundo antes de atualizar tudo: after 1000 _Principal_ } # Montando as janelas (widgets) tk_setPalette "#000000" wm title . "TkClock" wm minsize . 200 80 wm maxsize . 200 80 # Mostrando relogio: label .clock -text {} # Montando o widget label: pack .clock -side top -fill x -expand yes # Mostrando data: label .data -text {} pack .data -side bottom -fill x -expand yes # Mostrando dia label .dia -text {} pack .dia -side bottom -fill x -expand yes # Chamando procedimento: _Principal_ # Fechando janela (tecle <ENTER>): bind all <Return> { after cancel _Principal_ destroy . exit } # Fim
Compactando arquivos e diretórios simultâneamente
Criando uma simples lixeira para o usuário [Melhorado]
Convertendo escalas termométricas
Simples visualizador de arquivos texto
Nenhum coment�rio foi encontrado.
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Quebra de linha na data e hora no Linux Mint
Organizando seus PDF com o Zotero
tentando instalar em um notebook antigo o Linux LegacyOS_2023... [RESO... (9)
Problema com Conexão Outlook via Firewall (OpenSUSE) com Internet Fibr... (5)