procedure TForm2.Button1Click(Sender: TObject);
const
  MoneyValue: array[0..7] of Real = (0.1, 0.5, 1, 5, 10, 20, 50, 100);
var
  i: Byte;
  n: integer;
  rSalary: Real;
begin
  Memo1.Clear;
  rSalary := StrToFloat(Trim(Edit1.Text));
  for i := 7 downto 0 do
  begin
    if rSalary <= 0 then
      Break;
    n := Trunc(rSalary / MoneyValue[i]);
    if (n > 0) then
    begin
      Memo1.Lines.Add(IntToStr(n) + '张' + FloatToStr(MoneyValue[i]));
      rSalary := rSalary - n * MoneyValue[i];
    end;
  end;
end;
怎么才能做出可视化,能具体点吗。谢谢大神们了Delphi可视化

解决方案 »

  1.   

    你说的是能看到memo的动态添加过程吗?
    如果是这个意思的话,加上多线程,执行你操作的那部分,就可以看到memo的添加了,不然就会点击以后,memo直接显示最后的结果。
    试试这样。//执行部分,写到一个过程
    procedure MyFun;
    const
      MoneyValue: array[0..7] of Real = (0.1, 0.5, 1, 5, 10, 20, 50, 100);
    var
      i: Byte;
      n: integer;
      rSalary: Real;
    begin
      Form2.Memo1.Clear;
      rSalary := StrToFloat(Trim(Form2.Edit1.Text));
      for i := 7 downto 0 do
      begin
        if rSalary <= 0 then
          Break;
        n := Trunc(rSalary / MoneyValue[i]);
        if (n > 0) then
        begin
          Form2.Memo1.Lines.Add(IntToStr(n) + '张' + FloatToStr(MoneyValue[i]));
          rSalary := rSalary - n * MoneyValue[i];
        end;
      end;
    end;//按钮点击事件,用API创建一个线程来执行
    procedure TForm2.Button1Click(Sender: TObject);
    var
      t: THandle;
    begin
      CreateThread(nil, 0, @MyFun, nil, 0, id);
    end;
      

  2.   

    这段代码再看看有点眼熟,好像是前几天的那个求最少钞票张数发工资的程序嘛。
    你在窗口上拖一个memo控件,假设控件起名叫memo1
    再在窗口上拖一个button按钮,假设起名叫btn1
    然后双击这个按钮,把你抄来的这段代码贴上去