Alterar Cores do meu Tbutton De Acordo com o Status do Pedido.

Delphi

FireMonkey

01/11/2018

Olá senhores, Tenho um Aplicativo Firemonkey que realiza Pedidos Para um Servidor DataSnap, tenho minha tela onde fica todas as minhas mesas. Preciso Pintar os Botôes de vermelho se estiver Ocupado, e Verde se estiver Livre, Obs: Se o aplicativo Fechar, quando abrir preciso que os botoes respeitam a cor de Acordo com O Status da Mesa, Alguém pode me dar uma dica? Obrigado, Agradeço desde já!

OBS: Cada Numero da Mesa Representa Meu Pedido_Numero no banco de dados.
Erich

Erich

Curtidas 0

Melhor post

Thalles Oliveira

Thalles Oliveira

17/01/2019

Resolveu o problema? se sim, poste o resultado por favor...

se ainda não, vou tentar ajudar :

coloque uma Query no Form e no OnShow você pode fazer a mesma percorrer sua tabela de status e conforme resultado alterar a cor do button

Exemplo :

QryErich.Close;
QryErick.CommandText := '';
QryErick.CommandText := 'select * from vendas where mesa = 01 order by StatusMesa asc '
QryErich.Open;

if QryErich.FieldByName('STATUS').AsString := 'ABERTO' then
buttonMesa01.Color := clGreen
else
buttonMesa01.Color := clRed;

// mesa 02

QryErich.Close;
QryErick.CommandText := '';
QryErick.CommandText := 'select * from vendas where mesa = 02 order by StatusMesa asc '
QryErich.Open;

if QryErich.FieldByName('STATUS').AsString := 'ABERTO' then
buttonMesa02.Color := clGreen
else
buttonMesa02.Color := clRed;

basicamente seria isso, desculpe se errei algo estou sem o delphi aqui, só continuar o processo...
GOSTEI 1

Mais Respostas

Erich

Erich

01/11/2018

Resolveu o problema? se sim, poste o resultado por favor...

se ainda não, vou tentar ajudar :

coloque uma Query no Form e no OnShow você pode fazer a mesma percorrer sua tabela de status e conforme resultado alterar a cor do button

Exemplo :

QryErich.Close;
QryErick.CommandText := '''';
QryErick.CommandText := ''select * from vendas where mesa = 01 order by StatusMesa asc ''
QryErich.Open;

if QryErich.FieldByName(''STATUS'').AsString := ''ABERTO'' then
buttonMesa01.Color := clGreen
else
buttonMesa01.Color := clRed;

// mesa 02

QryErich.Close;
QryErick.CommandText := '''';
QryErick.CommandText := ''select * from vendas where mesa = 02 order by StatusMesa asc ''
QryErich.Open;

if QryErich.FieldByName(''STATUS'').AsString := ''ABERTO'' then
buttonMesa02.Color := clGreen
else
buttonMesa02.Color := clRed;

basicamente seria isso, desculpe se errei algo estou sem o delphi aqui, só continuar o processo...


Olá amigo resolvi da seguinte forma, criei um metodo que retorna se o pedido tem id ou nao, como o numero da mesa representa o numero do pedido, fiz um select naquele pedido, se o meu select retornar o id = 0 quer dizer que a mesa esta vazia, caso contrario a mesa esta ocupada, conforme o retorno ia pintando meus botões!! Agradeço a resposta amigo, Grande abraço!
GOSTEI 1
POSTAR