全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1173
推到 Plurk!
推到 Facebook!

在BCB5之下TDBDateTimePicker元件如何顯示24小時制?

尚未結案
kagaya
中階會員


發表:74
回覆:175
積分:59
註冊:2002-12-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-03-01 18:57:30 IP:210.200.xxx.xxx 未訂閱
在BCB5之下TDBDateTimePicker元件如何顯示24小時制? 目前會顯示出上午及下午 因為5沒有像6以上的版本有Format屬性可以設定 謝謝
------
KUSO 無處不在
Zard
尊榮會員


發表:24
回覆:396
積分:539
註冊:2003-11-26

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-03-01 20:34:21 IP:61.62.xxx.xxx 未訂閱
引言: 在BCB5之下TDBDateTimePicker元件如何顯示24小時制? 目前會顯示出上午及下午 因為5沒有像6以上的版本有Format屬性可以設定 謝謝
在BCB5要顯示自制的時間格式就要自行處理 DatetimePicker 的 WM_NOTIFY的DTN_DATETIMECHANGE 並用DTM_SETFORMAT設定日期格式 參考http://delphi.ktop.com.tw/topic.php?TOPIC_ID=62385
kagaya
中階會員


發表:74
回覆:175
積分:59
註冊:2002-12-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-03-02 10:30:46 IP:210.200.xxx.xxx 未訂閱
抱歉.delphi看不太懂.像 HandleNotify是自訂的函式吧.它是在哪裡觸發的呢? PNMHdr(msg.LParam)^.code 這是什麼意思呢? LPARAM(@szDateFormat[1])) 這是什麼意思呢? 謝謝
------
KUSO 無處不在
Zard
尊榮會員


發表:24
回覆:396
積分:539
註冊:2003-11-26

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-03-03 16:14:07 IP:210.243.xxx.xxx 未訂閱
幫你改好了, 直接用即可.
// Unit1.h
//---------------------------------------------------------------------------    #ifndef Unit1H
#define Unit1H
//---------------------------------------------------------------------------
#include 
#include 
#include 
#include <Forms.hpp>
#include 
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:        // IDE-managed Components
  TDateTimePicker *DateTimePicker1;
  void __fastcall FormShow(TObject *Sender);
private:        // User declarations
public:                // User declarations
  __fastcall TForm1(TComponent* Owner);      void __fastcall HandleNotify(TMessage &Message);
  BEGIN_MESSAGE_MAP
    MESSAGE_HANDLER(WM_NOTIFY, TMessage, HandleNotify)
  END_MESSAGE_MAP(TControl)
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
// Unit1.cpp
//---------------------------------------------------------------------------    #include 
#pragma hdrstop    #include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
void __fastcall TForm1::HandleNotify(TMessage &Message)
{
  AnsiString szDateFormat = "HH:mm:ss";
  if (Message.Msg == WM_NOTIFY)
  {
    if ( ((NMHDR*)Message.LParam)->code == DTN_DATETIMECHANGE )
    {
      SendMessage(DateTimePicker1->Handle, DTM_SETFORMAT, 0, LPARAM(szDateFormat.c_str()));
    }
  }
}    void __fastcall TForm1::FormShow(TObject *Sender)
{
  AnsiString szDateFormat = "HH:mm:ss";
  DateTimePicker1->DateTime = Now();
  SendMessage(DateTimePicker1->Handle, DTM_SETFORMAT, 0, LPARAM(szDateFormat.c_str()));
}
//--------------------------------------------------------------------------- 
發表人 - zard 於 2005/03/03 17:23:38
kagaya
中階會員


發表:74
回覆:175
積分:59
註冊:2002-12-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-03-03 17:11:02 IP:210.200.xxx.xxx 未訂閱
不知該說什麼了 Zard大大你太強了  感謝
------
KUSO 無處不在
系統時間:2024-05-11 17:16:48
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!