bestlong 怕失憶筆記

當健忘由隨機逐漸趨向常態時,作筆記是非常必要的

Entries for the ‘Delphi’ Category

Delphi 環境下的 Log 元件

Java 環境下有一個 Log4J 的功能,在 Delphi 環境下也有人開發出類似的元件。可以參考下列兩個專案:

http://log4d.sourceforge.net/
http://sourceforge.net/projects/log4d/

http://log4delphi.sourceforge.net/
http://sourceforge.net/projects/log4delphi

Leave a Comment

SystemRescueCd 救援系統用的 Live CD

網址:http://www.sysresccd.org/

提供下列工具程式

  • GParted
  • GNU Parted
  • PartImage
  • File Systems Tools
  • Ntfs3g
  • SFdisk
  • Test-disk
  • Network tools

還有包含其他未列出的工具程式請參考官方網站

Leave a Comment

讓 TDateTimePicker 不因按到上下鍵而改變日期

避免因使用者操作上的不小心去改動到日期
有時需要做一些管控
因為當游標焦點在 DateTimePicker 時,按到上下鍵時會增加或減少數字
想要讓這樣的操作失去作用可以使用下列程式

1
2
3
4
procedure TForm1.DateTimePicker1KeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if ((key=38) or (key=40)) then key:=0;
end;

Leave a Comment

限制 TDateTimePicker 不可小於某日期

寫程式常常碰到要處理日期區間的狀況
一般都會使用兩個 TDateTimePicker 元件做開始日期與結束日期的輸入
不過沒有做額外處理的話可能使用者會輸入成結束日期小於開始日期的不合理狀況
可以利用 TDateTimePicker.MinDate 屬性來解決

1
2
3
4
procedure TForm1.DateTimePicker1Change(Sender: TObject);
begin
    DateTimePicker2.MinDate := DateTimePicker1.Date;
end;

這樣當 DateTimePicker1 有改變時會自動影響 DateTimePicker2 的日期
也間接限制了 DateTimePicker2 可以設定的最小日期

Leave a Comment

Delphi 簡單處理小數點四捨五入的函數

簡單的處理Delphi程式在小數點進位的問題,可以用以下函數:

1
2
3
4
5
6
7
8
9
10
function myRound(x : extended) : extended;
begin
  if (int(x) * 10 + 5) > int(x * 10) then
  begin
  result := floor(x);
  end else
  begin
  result := ceil(x);
  end;
end;
1
這個 myRound()函數會保留小位點一位,需要增加位數可以自己修改。

Leave a Comment

  • 工商服務

    廣告讀取中...
  • 近期留言

  • 標籤

  • 彙整