speedbutton+datetimepicker显示为修改前的日期 |
答題得分者是:smallfox
|
luowy651
高階會員 發表:257 回覆:313 積分:114 註冊:2003-04-09 發送簡訊給我 |
|
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
|
luowy651
高階會員 發表:257 回覆:313 積分:114 註冊:2003-04-09 發送簡訊給我 |
还是不行
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, Buttons; type TForm1 = class(TForm) Date1: TDateTimePicker; Edit1: TEdit; Button1: TButton; SpeedButton1: TSpeedButton; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure SpeedButton1Click(Sender: TObject); procedure Date1KeyPress(Sender: TObject; var Key: Char); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin edit1.text:= FormatDateTime('YYYYmmdd',Date1.date); end; procedure TForm1.FormCreate(Sender: TObject); begin date1.date:=date; end; procedure TForm1.SpeedButton1Click(Sender: TObject); begin edit1.text:= FormatDateTime('YYYYmmdd',Date1.date); end; procedure TForm1.Date1KeyPress(Sender: TObject; var Key: Char); begin edit1.text:= FormatDateTime('YYYYmmdd',Date1.date); end; end.
編輯記錄
luowy651 重新編輯於 2010-06-14 15:03:23, 註解 無‧
|
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
在on key press 中處理時,您當然還必須判斷是不是按了Enter鍵
假如按了Enter鍵才將數值給Edit呀~ ===================引 用 luowy651 文 章=================== 还是不行 unit Unit1; interface uses ? Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ? Dialogs, StdCtrls, ComCtrls, Buttons; type ? TForm1 = class(TForm) ??? Date1: TDateTimePicker; ??? Edit1: TEdit; ??? Button1: TButton; ??? SpeedButton1: TSpeedButton; ??? procedure Button1Click(Sender: TObject); ??? procedure FormCreate(Sender: TObject); ??? procedure SpeedButton1Click(Sender: TObject); ??? procedure Date1KeyPress(Sender: TObject; var Key: Char); ? private ??? { Private declarations } ? public ??? { Public declarations } ? end; var ? Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin edit1.text:= FormatDateTime('YYYYmmdd',Date1.date); end; procedure TForm1.FormCreate(Sender: TObject); begin date1.date:=date; end; ? procedure TForm1.SpeedButton1Click(Sender: TObject); begin ?edit1.text:= FormatDateTime('YYYYmmdd',Date1.date); end; procedure TForm1.Date1KeyPress(Sender: TObject; var Key: Char); begin ?edit1.text:= FormatDateTime('YYYYmmdd',Date1.date); end; end.
編輯記錄
老大仔 重新編輯於 2010-06-14 16:12:12, 註解 無‧
|
luowy651
高階會員 發表:257 回覆:313 積分:114 註冊:2003-04-09 發送簡訊給我 |
|
老大仔
尊榮會員 發表:78 回覆:837 積分:1088 註冊:2006-07-06 發送簡訊給我 |
所以照您這樣說~
一開始您說"用键盘修改日期" 所以才需要在on Key Press 中去操作的 而現在又說"大部分情况下都是直接点mouse的" 所以您到底是要哪種方法?? ===================引 用 luowy651 文 章=================== 谢谢老大仔大大,但一般情况下,不会去按key,大部分情况下都是直接点mouse的 ===================引 用 老大仔 文 章=================== 在on key press 中處理時,您當然還必須判斷是不是按了Enter鍵 假如按了Enter鍵才將數值給Edit呀~
編輯記錄
老大仔 重新編輯於 2010-06-15 10:28:44, 註解 無‧
|
luowy651
高階會員 發表:257 回覆:313 積分:114 註冊:2003-04-09 發送簡訊給我 |
抱歉,是我没说清楚,我指的是先用键盘修改日期(在datetimepicker元件上可看到有蓝色的修改痕迹),然后再用mouse去点击speedbutton1
===================引 用 老大仔 文 章=================== 所以照您這樣說~ 一開始您說"用键盘修改日期" 所以才需要在on Key Press 中去操作的 而現在又說"大部分情况下都是直接点mouse的" 所以您到底是要哪種方法?? ===================引 用 luowy651 文 章=================== 谢谢老大仔大大,但一般情况下,不会去按key,大部分情况下都是直接点mouse的 ===================引 用 老大仔 文 章=================== 在on key press 中處理時,您當然還必須判斷是不是按了Enter鍵 假如按了Enter鍵才將數值給Edit呀~ |
hpsonic
一般會員 發表:3 回覆:12 積分:3 註冊:2009-05-29 發送簡訊給我 |
TForm1.DateTimePicker1Change 是否可以解決呢?一被修改就更改 但不建議用showmessage ,會一直提示,改秀在label或edit
===================引 用 luowy651 文 章=================== 各位大大好,我在用 speedbutton datetimepicker1时, 把日期用键盘修改后(注意:是用键盘修改日期), 然后:showmessage(datetostr(datetimepicker1.date)); 显示为修改前的日期。 但用button就没问题 不知各位大大有没有碰到过这么奇怪的事 |
luowy651
高階會員 發表:257 回覆:313 積分:114 註冊:2003-04-09 發送簡訊給我 |
谢谢关注,情况一样,可能是focus的问题,只要先在别的元件上focus一下,就可解决,只是我很奇怪为什么会这样
===================引 用 hpsonic 文 章=================== TForm1.DateTimePicker1Change 是否可以解決呢?一被修改就更改 但不建議用showmessage ,會一直提示,改秀在label或edit ===================引 用 luowy651 文 章=================== 各位大大好,我在用 speedbutton datetimepicker1时, 把日期用键盘修改后(注意:是用键盘修改日期), 然后:showmessage(datetostr(datetimepicker1.date)); 显示为修改前的日期。 但用button就没问题 不知各位大大有没有碰到过这么奇怪的事 |
smallfox
高階會員 發表:2 回覆:113 積分:128 註冊:2003-02-19 發送簡訊給我 |
|
smallfox
高階會員 發表:2 回覆:113 積分:128 註冊:2003-02-19 發送簡訊給我 |
|
smallfox
高階會員 發表:2 回覆:113 積分:128 註冊:2003-02-19 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |