圣诞快乐!请帮忙进来看看我这段代码怎么解决!!!!(10分)

  • 主题发起人 主题发起人 luckyboy97
  • 开始时间 开始时间
L

luckyboy97

Unregistered / Unconfirmed
GUEST, unregistred user!
我用下面这段代码:
procedure TForm.ComboBox1Change(Sender: TObject);
var s1,s2:string;
begin
query1.close;
query1.sql.clear;
query1.sql.add('select p_name,price from spb where P_name=:num');
query1.parambyname('num').asstring:=combobox1.text;
query1.prepare;
query1.open;
s1:=inttostr(query1.fieldbyname('price').asinteger);
s2:=query1.fieldbyname('P_name').asstring;
listBox1.Items.Add(s2+' '+s1);
count:=count+query1.fieldbyname('price').asinteger;
Edit1.Text:=inttostr(count);
end;
实现类似订货的功能,我在combobox1中选择一种商品就自动将商品名称(P_name)、
价格(price)显示在listbox1中,将价格加在一起赋给edit1.我现在假如是选错要
将listbox1中的商品移出,所加的价格也要自动减去,我要实现这个功能要怎么做呢?
请各位帮忙解决!!!谢谢了
 
在写一个查询,你在ListBox1中选中的商品的名称作为参数传进去,得到它的价格,
然后从总值减去。(和你的Query1是一样的)
 
现在的问题是我在listbox1里面的内容是商品名称+价格,我怎么来写呢?还又我们将
我现在的记录从listbox1中删除呢?你能用代码帮我解决吗?谢谢
 
分太少!。。。:(
我会写!
 
不是我不给啊,实在是没分了,麻烦帮帮忙!!谢谢了!!!
 
那你等一下!
 
Str:=istBox1.Items[2]; //从0开始计数,假定删除第三行=2

i:=length(Str);

while ((Str<>' ') and (i>0)) do i:=i-1; //从Str的尾部开始查找空格' ',得到空格所在位置i

price:=Strtofloat(Copy(Str,i+1,length(Str))); //得到价格
 
问题基本得到解决,那么这样将listbox中的内容以一定的格式保存,便于打印呢?
 
后退
顶部