FORMAT:='yyyy-MM'
也就是我用这个控件时,我只用来显示年月,不要日期的信息
调成dmUpDown模式后,点上下箭头时,光标所在的栏目的值会改变,但是如果月到了12再点就变成了1月,但是年份不变,我现在希望能联动,也就是月份到了十二月份后再点击就到了下一年的一月。
也就是我用这个控件时,我只用来显示年月,不要日期的信息
调成dmUpDown模式后,点上下箭头时,光标所在的栏目的值会改变,但是如果月到了12再点就变成了1月,但是年份不变,我现在希望能联动,也就是月份到了十二月份后再点击就到了下一年的一月。
解决方案 »
- InternetOpenUrl API IE7
- 我想做一个小的应用程序:打开某固定的excel表格,然后向某固定的sheet里边 的 最后一行添加数据
- 关于findcomponent函数问题
- 在TQuery中用单个SQL语句删除或修改一个表,当有可能数据量巨大时,是不是应该分批处理,请各位大侠谈谈经验:针对sql server 和mysql分
- DELPHI只能作数据库吗?
- 在线求助!怎样实现多条记录post?
- 为什么存储过程中不能带参数?
- 同志们,你们经常用什么控件?
- 请教一个关于ftp传输文件的问题!!
- 如何在listview中实现拖动,各位大虾救命
- TreeView控件的使用出现的小问题
- Dbgrid的数据可以导成xml文件吗?怎么写代码
procedure TForm1.DateTimePicker1Change(Sender: TObject);
var
Year, Month, Day: Word;
begin
DecodeDate(self.DateTimePicker1.Date,year,month,day);
if month=1 then
self.DateTimePicker1.Date:=EncodeDate(Year+1, Month, Day);
end;
然后根据这个判断
if CurrentMonth > AfterMonth then
begin
if AfterMonth=1 then
减一年
end
else begin
if AfterMonth=1 then
加一年
end;
CurrentMonth := AfterMonth//修改当前月份,便于下次比较。
procedure Tfrmmain.dtpstartEnter(Sender: TObject);
begin
if OLDstartMONTH<=0 then OLDstartMONTH:=MonthOf((Sender as TDateTimePicker ).Date);
end;procedure Tfrmmain.dtpstartChange(Sender: TObject);
var
Year, Month, Day: Word;
begin
DecodeDate(self.dtpstart.Date,year,month,day);
if (OLDstartMONTH=12) and (month=1) then
begin
self.dtpstart.Date:=EncodeDate(Year+1, Month, Day);
end;
if (OLDstartMONTH=1) and (month=12) then
begin
self.dtpstart.Date:=EncodeDate(Year-1, Month, Day);
end;
OLDstartMONTH:= month;
end;