Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda na listbox


Jlopes

Pergunta

Olá amigos estou com uma duvida que está me matando já um bom tempo

Estou fazendo um programa de compras, na escolha da compra vá para listbox1 o nome do produto e na listbox2 o valor do produto,o valor tambem vai para o label1, e o numero da quantidade vai para o outro label2, ate ai tudo certo eu fiz, mas ao fazer um duplo click no produto selecionado na listbox1 eu quero que ele diminua o valor dado pela label1 por exemplo: o usario comprou 2 processadores de marcas diferentes por 1000 reais, sendo q 1 processador custa 250 e outro 750, então o usuario quer ter o de 250. Na quantidade eu consgui diminuir mas pra pegar o preço da listbox2 e diminuir apenas o preço do outro processador eu não estou consguindo!!

Deem uma olhada no codigo:

private
    { Private declarations }
  public
    { Public declarations }
  end;

var
valor11,valor12,tot1,totalf:real;
quant1:integer;
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.ComboBox1Change(Sender: TObject);

begin

if combobox1.itemindex= 0 then
begin
valor11:=250.00;
listbox1.Items.Add('Processador1');
listbox2.items.Add ('250.00');
tot1:=tot1+valor11;
quant1:=quant1+1;
totalf:=totalf+tot1;
label37.caption:=floattostr(totalf);
end;

if combobox1.itemindex=1 then
begin
valor12:=750.00;
listbox1.Items.Add('Processador2');
listbox2.items.Add ('750.00');
tot1:=tot1+valor12;
quant1:=quant1+1;
totalf:=totalf+tot1;
label37.caption:=floattostr(totalf);
end;
end;

procedure TForm1.ListBox1Click(Sender: TObject);

begin
listbox2.ItemIndex := listbox1.itemindex;

end;

procedure TForm1.ListBox2Click(Sender: TObject);

begin
listbox1.ItemIndex := listbox2.itemindex;

end;

procedure TForm1.ListBox1DblClick(Sender: TObject);
var
a:string;
begin
ListBox1.Items.Delete(ListBox1.ItemIndex);
ListBox2.Items.Delete(ListBox2.ItemIndex);
quant1:=quant1-1;
if quant1<=0  then
quant1:=0;
label26.Caption:=floattostr(quant1);
end;

end.

Tirei algumas coisas se não o codigo ia ficar Gigante!

Já tentei de tudo mas fica negativo o valor total ou ele pega o valor errado por exemplo quero tirar só o 250 mas ele tira o de 750!

Uma Imagem do programa:

hard.th.jpg

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
Olá amigos estou com uma duvida que está me matando já um bom tempo

Estou fazendo um programa de compras, na escolha da compra vá para listbox1 o nome do produto e na listbox2 o valor do produto,o valor tambem vai para o label1, e o numero da quantidade vai para o outro label2, ate ai tudo certo eu fiz, mas ao fazer um duplo click no produto selecionado na listbox1 eu quero que ele diminua o valor dado pela label1 por exemplo: o usario comprou 2 processadores de marcas diferentes por 1000 reais, sendo q 1 processador custa 250 e outro 750, então o usuario quer ter o de 250. Na quantidade eu consgui diminuir mas pra pegar o preço da listbox2 e diminuir apenas o preço do outro processador eu não estou consguindo!!

Deem uma olhada no codigo:

private
    { Private declarations }
  public
    { Public declarations }
  end;

var
valor11,valor12,tot1,totalf:real;
quant1:integer;
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.ComboBox1Change(Sender: TObject);

begin

if combobox1.itemindex= 0 then
begin
valor11:=250.00;
listbox1.Items.Add('Processador1');
listbox2.items.Add ('250.00');
tot1:=tot1+valor11;
quant1:=quant1+1;
totalf:=totalf+tot1;
label37.caption:=floattostr(totalf);
end;

if combobox1.itemindex=1 then
begin
valor12:=750.00;
listbox1.Items.Add('Processador2');
listbox2.items.Add ('750.00');
tot1:=tot1+valor12;
quant1:=quant1+1;
totalf:=totalf+tot1;
label37.caption:=floattostr(totalf);
end;
end;

procedure TForm1.ListBox1Click(Sender: TObject);

begin
listbox2.ItemIndex := listbox1.itemindex;

end;

procedure TForm1.ListBox2Click(Sender: TObject);

begin
listbox1.ItemIndex := listbox2.itemindex;

end;

procedure TForm1.ListBox1DblClick(Sender: TObject);
var
a:string;
begin
ListBox1.Items.Delete(ListBox1.ItemIndex);
ListBox2.Items.Delete(ListBox2.ItemIndex);
quant1:=quant1-1;
if quant1<=0  then
quant1:=0;
label26.Caption:=floattostr(quant1);
end;

end.

Tirei algumas coisas se não o codigo ia ficar Gigante!

Já tentei de tudo mas fica negativo o valor total ou ele pega o valor errado por exemplo quero tirar só o 250 mas ele tira o de 750!

Uma Imagem do programa:

hard.th.jpg

o ideal seria você ter um parametro certo de desconto exemplo 10%

assim iria descontar 10 % do valor

voce pode adicionar um campo para isso ao clicar em determiando produtro irar buscar o valor e descontar a margem de desconto

se caso for outra sua duvida eu não entendir

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...