磁碟分割槽大小顯示(以對數的形式)
阿新 • • 發佈:2018-12-11
var pts: array [0..8] of single= (111, 399, 90, 300, 5, 5, 1, 2, 18);//單位:M procedure TForm1.Button1Click(Sender: TObject); var dw: Integer; I: Integer; px, t: Single; begin //以對數的方式顯示磁碟分割槽大小( dw := Panel1.Width; t := 0; for I := Low(pts) to High(pts) do begin if pts[I] > 0 then t := t + Log10(pts[I]);//統計分割槽對數和 end; px := dw / t;//對數和佔總寬度的比例 for I := High(pts) downto Low(pts) do begin //建立一個Panel,其寬度 = 對數值 * 總寬度佔比 if pts[I] > 0 then with TPanel.Create(Panel1) do begin Parent := Panel1; Align := alLeft; Caption := IntToStr(I); Width := Round(Log10(pts[I]) * px); end; end; end;