O Clock Widget é um widget de relógio e data moderno para Windows, desenvolvido em Java com JavaFX, projetado para oferecer uma experiência elegante e personalizável diretamente na sua área de trabalho. Com suporte a múltiplos temas, sistema de alarmes integrado e transparência ajustável, o Clock Widget proporciona uma interface amigável e recursos intuitivos para organizar seu tempo de forma eficiente.
Desenvolvido para ser leve e adaptável, o Clock Widget é ideal tanto para quem precisa de um relógio discreto na tela quanto para aqueles que desejam funcionalidades avançadas como lembretes e alarmes personalizados. Ele foi feito para ser fácil de usar, com arrastamento livre pela tela e personalização completa através de temas CSS elegantes.
Com a robustez do JavaFX, o Clock Widget garante uma aparência moderna e suave em qualquer configuração de sistema. Ele é especialmente útil para quem busca praticidade sem sacrificar o design, mantendo sempre à vista as informações essenciais: hora, data e dia da semana sincronizados com o sistema operacional.
Além disso, o Clock Widget pode ser personalizado com 7 temas visuais distintos (Preto, Azul, Verde, Roxo, Cyberpunk, Rosa e Glass), oferecendo uma solução prática e elegante para quem precisa de um widget de relógio eficiente e bonito na área de trabalho.
| Versão | Download |
|---|---|
v1.0.0 - JAR |
ClockWidget.jar |
v1.0.0 - Windows EXE |
ClockWidget.exe |
Note
• Java 11 ou superior instalado no sistema
• Windows 7 ou superior (testado no Windows 10/11)
• 100 MB de espaço em disco (incluindo JavaFX)
• Resolução mínima: 1280x720
Para verificar sua versão do Java:
java -versionSe não tiver Java instalado, baixe em:
◾ Interface Elegante e Minimalista: Design moderno com gradientes suaves e efeitos visuais.
◾ 7 Temas Personalizáveis: Escolha entre Preto, Azul, Verde, Roxo, Cyberpunk, Rosa e Glass (vidro translúcido).
◾ Sistema de Alarmes Integrado: Crie lembretes com data, hora e mensagem personalizada.
◾ Sons Harmônicos: Alarmes com tons musicais suaves (acorde C5+E5) em vez de beeps irritantes.
◾ Sincronização do Sistema: Relógio sempre sincronizado com o horário do Windows.
◾ Transparência Ajustável: Controle de opacidade de 10% a 100% em incrementos de 10%.
◾ Arrastar e Posicionar: Clique e arraste o widget para qualquer posição na tela.
◾ Informações Integradas: Botão "ℹ" com créditos, instruções e link direto para o GitHub.
◾ Persistência de Dados: Alarmes salvos automaticamente em arquivo local.
◾ Multi-idioma: Interface em Português Brasileiro.
Important
Ter o Git instalado no seu computador. Se ainda não tiver, baixe e instale o Git.
Ter o Java JDK 11+ instalado para compilar e executar o projeto.
O projeto inclui script de instalação automática do JavaFX SDK 22.0.2.
Uma conta no GitHub (opcional, mas recomendado).
Faça um Fork do repositório, assim nada será alterado do repositório original.
widgetClockAndData/
├── src/
│ └── main/
│ ├── java/com/widget/
│ │ ├── ClockWidget.java # Aplicação principal
│ │ ├── AlarmManager.java # Gerenciador de alarmes
│ │ ├── Alarm.java # Modelo de alarme
│ │ ├── AlarmSound.java # Gerador de sons
│ │ └── IconGenerator.java # Gerador de ícones
│ └── resources/styles/
│ ├── icon/
│ │ ├── icon-256_1.ico # Ícone principal (256x256)
│ │ └── icon-32.ico # Ícone pequeno (32x32)
│ ├── theme-default.css # Tema Preto (padrão)
│ ├── theme-blue.css # Tema Azul
│ ├── theme-green.css # Tema Verde
│ ├── theme-purple.css # Tema Roxo
│ ├── theme-cyberpunk.css # Tema Cyberpunk
│ ├── theme-pink.css # Tema Rosa
│ └── theme-glass.css # Tema Glass
├── javafx-sdk/ # JavaFX SDK (auto-instalado)
├── bin/ # Classes compiladas
├── build-complete.ps1 # Script de build completo
├── run-widget.ps1 # Executar widget (PowerShell)
├── install-javafx.ps1 # Instalar JavaFX automaticamente
├── generate-icon.bat # Gerar ícones PNG
├── launch4j-config.xml # Configuração Launch4j
└── ClockWidget.jar # JAR executável
1. Clone o repositório:
git clone https://github.com/oblipix/widgetClockAndData.git
cd widgetClockAndData2. Instale o JavaFX (se necessário):
powershell -ExecutionPolicy Bypass -File .\install-javafx.ps1O script baixa e instala automaticamente o JavaFX SDK 22.0.2.
3. Execute o widget:
.\run-widget.ps1Ou compile manualmente:
# Compilar
javac --module-path "javafx-sdk\javafx-sdk-22.0.2\lib" --add-modules javafx.controls,javafx.fxml -d bin src\main\java\com\widget\*.java
# Executar
java --module-path "javafx-sdk\javafx-sdk-22.0.2\lib" --add-modules javafx.controls,javafx.fxml -cp bin com.widget.ClockWidgetO Clock Widget oferece 7 temas com estilos distintos:
| Tema | Descrição | Cores Principais |
|---|---|---|
| Preto (Padrão) | Elegante e discreto | Gradiente #18181b → #27272a |
| Azul | Oceano profundo | Gradiente #1e3a8a → #3b82f6 |
| Verde | Esmeralda vibrante | Gradiente #059669 → #10b981 |
| Roxo | Místico e sofisticado | Gradiente #7c3aed → #a78bfa |
| Cyberpunk | Neon futurista | Gradiente #ec4899 → #06b6d4 |
| Rosa | Vibrante e moderno | Gradiente #db2777 → #f472b6 |
| Glass | Translúcido estilo vidro | Transparência com blur |
Para trocar de tema: Clique no botão ⚙ (Configurações) → Temas → Selecione o tema desejado.
- Clique no botão ⏰ (Adicionar Alarme)
- Selecione a data no calendário
- Defina a hora e os minutos
- Digite a mensagem do lembrete
- Clique em Adicionar
- Clique no botão ⚙ → Gerenciar Alarmes
- Veja todos os alarmes ativos
- Remova alarmes individualmente
- Limpe alarmes já disparados
O Clock Widget implementa um sistema automático de persistência que garante que seus alarmes nunca sejam perdidos, mesmo após fechar ou reiniciar o aplicativo.
Todos os alarmes são salvos localmente em um arquivo chamado alarms.dat, localizado na mesma pasta onde o widget está sendo executado. Por exemplo:
- Se você executa
ClockWidget.exeda pastaC:\MeusProgramas\, o arquivo ficará emC:\MeusProgramas\alarms.dat
O sistema de persistência opera de forma completamente transparente, sem necessidade de intervenção do usuário:
Salvamento Automático acontece quando:
- ✅ Você adiciona um novo alarme
- ✅ Você remove um alarme
- ✅ Um alarme dispara (é acionado)
- ✅ O sistema limpa alarmes antigos (alarmes disparados há mais de 24 horas)
Carregamento Automático:
- 🔃 Sempre que o widget é iniciado, todos os alarmes salvos são automaticamente restaurados
- 🔃 Seus alarmes permanecem intactos entre execuções, mesmo após reiniciar o computador
- Formato: Serialização binária Java (ObjectOutputStream)
- Confiabilidade: Sistema robusto com tratamento de erros
- Portabilidade: O arquivo
alarms.datpode ser copiado para backup ou transferido para outro computador - Manutenção: Alarmes disparados há mais de 1 dia são automaticamente removidos para manter o arquivo limpo
Se você quiser fazer backup dos seus alarmes, basta copiar o arquivo alarms.dat para um local seguro. Para restaurar, copie-o de volta para a pasta do widget antes de executá-lo.
O Clock Widget utiliza sons harmônicos personalizados em vez de beeps irritantes:
- Acorde musical: C5 + E5 (Dó e Mi em oitava alta)
- Volume: 70% (ajustado para ser audível mas não agressivo)
- Repetição: Loop contínuo até clicar em "OK"
- Fallback: Beep do sistema caso o som personalizado falhe
| Ação | Como fazer |
|---|---|
| Mover widget | Clique e arraste em qualquer lugar do widget |
| Adicionar alarme | Botão ⏰ no topo direito |
| Trocar tema | Botão ⚙ → Temas |
| Ajustar transparência | Botão ⚙ → Transparência |
| Ver informações | Botão ℹ no topo direito |
| Fechar widget | Botão ⚙ → Sair |
Solução: Execute install-javafx.ps1 para baixar o JavaFX SDK.
Solução: Instale o Java 11+ em Adoptium.net
Solução: Verifique se a pasta javafx-sdk está presente e execute:
.\run-widget.ps1Solução: Copie os arquivos CSS manualmente:
Copy-Item src\main\resources\styles\*.css -Destination bin\styles\ -ForceSolução: Certifique-se de que o diretório tem permissões de escrita. Execute como Administrador se necessário.
Maria Carolina
🔗 GitHub: github.com/oblipix
📧 Contato: Abra uma issue no GitHub
Contribuições são bem-vindas! Para contribuir:
- Faça um Fork do projeto
- Crie uma branch para sua feature (
git checkout -b feature/MinhaFeature) - Commit suas mudanças (
git commit -m 'Adiciona MinhaFeature') - Push para a branch (
git push origin feature/MinhaFeature) - Abra um Pull Request
Este projeto está licenciado sob a MIT License.