domingo, 21 de junho de 2015

Projeto: SisComanda

Salve galera, hoje irei apresentar para vocês um trabalho que está sendo desenvolvido por mim e um colega de classe,

O sistema é um controle de consumo de clientes em determinado estabelecimento(usamos como exemplo uma padaria).
Nele, o funcionário do estabelecimento terá mais agilidade e comodidade para marcar o que o cliente consumiu.

Através da tela principal, temos os seguintes campos:







Caixa: O primeiro campo é destinado ao Caixa, é nele que estará a relação do que foi gasto pelo cliente com as seguintes informações:
-Itens Comprados;
-Preço;
-Quantidade;
-Valor Total da compra;





Salvar dados na comanda: O segundo campo é destinado a tela principal do sistema que é onde serão adicionados os itens que o cliente consumiu no estabelecimento para dentro de sua comanda (idCliente).

Nesta tela, o funcionário do estabelecimento irá colocar o id do produto no primeiro campo (caso não souber o id do produto, haverá uma outra janela para pesquisa).
Após inserir o id do produto, ele deverá informar o numero da comanda do cliente(id do cliente).
E em seguida, a quantidade que foi consumida, quando o botão finalizar é acionado, os itens citados acima serão salvos na comanda e posteriormente serão chamados no caixa para o pagamento da conta.


Cadastro de Clientes: Esta tela será responsável pelo cadastro de clientes do estabelecimento, este cadastro servirá para aquele cliente que esqueceu sua carteira em casa por exemplo.



Tela de pesquisa de produtos: Servirá para quando o funcionário não souber o Id do produto na tele principal, pesquisar pelo seu nome e o valor do campo será preenchido automaticamente. 



Sair: Quando este campo for selecionado, o programa deverá encerrar.




Basicamente é este o sistema, ainda está faltando alguns ajustes.
Espero que tenham gostado, qualquer dúvida deixem nos comentários, vlw!






domingo, 14 de junho de 2015

Binding

Salve galera, neste tutorial irei repassar o que aprendi em sala esta semana, vamos lá:
O assunto do tópico de hoje é Binding

Realizar binding significa fazer com que uma propriedade tenha seu valor modificado em função de outra.
Se temos o texto A e queremos que o texto B seja o mesmo que o A, usamos o binding bidirecional, caso queira modificar o texto B, devemos mudar o A.

Exemplo :

Devemos inicializar as variáveis dentro do VO:



O binding pode ser usado pelos tipos:
inteiros - SimpleIntegerProperty();
boolean- SimpleBooleanProperty();
double - SimpleDoubleProperty();
string - SimpleStringProperty();

e para os demais objetos usamos:
SimpleObjectProperty();


Por hoje é isso, espero que tenha ajudado.



domingo, 7 de junho de 2015

Tratamento de eventos

Neste tutorial irei ensinar como adicionar funcionalidades e comportamentos de botões com comando ActionEvent.

ActionEvent é o comando responsável por acionar eventos aos botões do projeto
no JavaFX SceneBuilder

Irei usar o exemplo do post anterior neste tutorial
(http://progiii.blogspot.com.br/2015/05/criacao-de-um-projeto-javafx.html)

Vamos la:

Com a tela já estruturada vá até o pacote view do projeto CuponsPromocionais e dentro do Initializable, após a declaração de variáveis e colunas, digite o seguinte código:





Este código será responsável pelo funcionamento do botão Salvar na tela do projeto mas para que isso aconteça, devemos antes chamar o comando Salvar dentro do Scene Builder

Verifique se a classe Controller foi importada para o Scene Builder:


Caso não estiver, apenas clique no comboBox do Controller que o atalho estará lá. "br.edu.unisep.view.TelaPrincipalController"

Após fazer isso, vá até o Botão Salvar do projeto e clique nele:



Vá até a opção Code que fica no canto superior direito. Ache o campo On Action e verifique se a opção salvar esta selecionada, caso não esteja, apenas clique no ComboBox e selecione.


Ainda no Code, vá um pouco mais para baixo e encontre a opção Mouse, e no segundo On Mouse Clicked selecione a opção Salvar.


Pronto, seu Botão salvar já estará funcionando, faça o mesmo processo com o botão Excluir usando o seguinte código: