The Code Project View our sponsorsClick here for the free Dundas Upload controlAdvertise on the CodeProject
Home >> Date / Time handling >> General

BCGDateTime controls version 1.0
By Stas Levin

A set of four date/time ActiveX controls (Date/Time Picker, Month Calendar, Duration Control, Time Intervals Control) 
 VC6, Win9x, NT4, MFC
 Posted 27 Jan 2000
Articles by this author
Send to a friend
Printer friendly version
Lounge New Articles Sign in Forums Contribute
Broken links? Email us!
10 users have rated this article. result:
4 out of 5.

  • Download BCGDateTime controls - 244 Kb
  • Please see Stas Levin's Page for the latest updates, discussion board, and FAQ.

    Introduction

    BCGDateTime is a set of four date/time ActiveX controls (Date/Time Picker, Month Calendar, Duration Control, Time Intervals Control)

    BCGDateTime Features

    BCGDateTime is a set of four ActiveX date/time and calendar controls.

    All controls are automatically obtain date/time system formats from the customer computer settings.

    How to use BCGDateTime controls

    Installation notes:

    1. Unzip BCGTimeControls.zip file (e.g. c:\bcg directory)
    2. Go to output\release directory and register all controls (regsvr32 BCGDateTime.ocx, regsvr32 BCGDurationCtrl.ocx and regsvr32 BCGTimeIntervals.ocx)
    3. Run BCGTimeExample.exe

    Date/Time Control Properties and Methods:

    Name Description
    Date Date Date/Time value
    DATE MinDate Min. allowed date
    DATE MaxDate Max. allowed date
    boolean CheckButton Show check box
    boolean DropCalendar Show Drop-down calendar arrow
    boolean ShowDate Show control's date part
    boolean ShowTime Show control's time part
    boolean SpinButton Show up/down arrows
    boolean WantReturn If WantReturn is true, control catches ENTER/ESC keys and fires OnEnter/OnCancel events
    void SizeToContent() Adjust control size according to attributes. Should be called in OnInitDialog (VB - Form_Load)

    Date/Time Control Events:

    Name Description
    OnDateChanged Indicates that Date property was changed
    OnSetFocus Indicates that control received focus
    OnKillFocus Indicates that control lost focus
    OnEnter Enter key was pressed (fired if WantReturn property is true)
    OnCancel Esc key was pressed (fired if WantReturn property is true)

    Calendar Control Properties and Methods:

    Name Description
    boolean MultiplySelection Allow multiply days selection
    boolean AbsoluteSelectionMode When this property is true, the selected days are saved when user changes the month; otherwise, control saves the weekdays
    OLE_COLOR BackgroundColor Calendar background color
    OLE_COLOR ForegroundColor Calendar foreground color
    OLE_COLOR SelectionBackgroundColor Background color of the selected days
    OLE_COLOR SelectionForegroundColor Foreground color of the selected days
    OLE_COLOR LightColor 3-d edges light color
    OLE_COLOR ShadowColor 3-d edges shadow color
    void SetSelectedDay(short iDay) Select the day (1-31)
    void ClearAllSelections() Clear all day selections
    boolean IsDaySelected(short iDay) Is day (1-31) selected?
    boolean MarkDay(short iDayNum, boolean bMarked) Mark the specific day (marked day is displayed as bold+underline)
    void UnMarkAllDays() Clear all day marks

    Calendar Control Events:

    Name Description
    OnSelectionChanged Indicates that selection was changed
    OnDateChanged Indicates that date was changed (relevant if MultiplySelection property is false)
    OnMonthChanged Indicates that month/year was changes

    Duration Control Properties and Methods:

    Name Description
    long TotalSeconds Duration
    boolean SpinButton Show up/down arrows
    BSTR DaysLabel Text appeares after the days number (default: "Day(s) ")
    BSTR HoursLabel Text appeares after the hours number (default: ":")
    BSTR MinutesLabel Text appeares after the minutes number (default is empty)
    boolean ShowDays Show number of days
    boolean ShowHoursMinutes Show hours/minutes part
    void SizeToContent() Adjust control size according to attributes. Should be called in OnInitDialog (VB - Form_Load)

    Duration Control Events:

    Name Description
    void OnDurationChanged(long lTotalSeconds) Indicates that duration was changed

    Time Intervals Control Properties and Methods:

    Name Description
    boolean MergingIsAllowed Time intervals automerge is allowed
    boolean MultiplySelection Multiple selection is allowed
    OLE_COLOR IntervalColor Interval background color
    OLE_COLOR IntervalTextColor Interval foreground color
    OLE_COLOR BackgroundColor Control background color
    OLE_COLOR ForegroundColor Control foreground color
    boolean AddInterval(DATE dateFrom, DATE dateTo, short iStatus) Add a new time interval (remark: date part of DATE-type parameters are ignored). Interval's color will be defined according to interval's status (see SetStatusColor method)
    boolean ChangeInterval(short iIndex, DATE dateFrom, DATE dateTo, short iStatus) Changes the specific time interval
    boolean RemoveInterval(short index) Remove the specific time interval
    void RemoveAllIntervals() Remove all time intervals
    short GetIntervalsCount() Returns intervals count
    boolean GetInterval(short iIndex, DATE* dateFrom, DATE* dateTo, short* iStatus) Obtain the specific interval data
    boolean SetIntervalStatus(short iIndex, short iStatus) Set the specific interval status. Interval's color will be defined according to interval's status (see SetStatusColor method)
    void SetStatusColor(short iStatus, OLE_COLOR color) Set the specific status's color. All time intervals with the given status will be drawn with this background color
    short GetCurSel() Returns selected interval number or (-1) if no intervals is selected
    boolean SetCurSel(short index) Select the specific interval

    Time Intervals Control Events:

    Name Description
    OnAddInterval(short index, DATE FromTime, DATE ToTime) New time interval was added by user
    OnChangeInterval(short index, DATE FromTime, DATE ToTime) Time interval was moved by user
    OnRemoveInterval(DATE FromTime, DATE ToTime) Time interval was removed by user
    OnSelectionChanged(short index) Selection was changed

    Requirements

    MS Visual C++ 5.0 with the SP3   This code can be used WITHOUT ANY WARRANTIES on your own risk. You can send bug reports and suggestions to Stas Levin.

    Copyright and use

    BCGDateTime controls are freeware software. You may use, compile or redistribute it as part of your application for free. You cannot redistribute it as a part of a software development library without the agreement of the author. If the sources are distributed along with the application, you should leave the original copyright notes in the source code without any changes.

    [Top] Sign in to vote for this article:     PoorExcellent  
    Hint: For improved responsiveness, use Internet Explorer 4 (or above) with Javascript enabled, choose 'Use DHTML' from the View dropdown and hit 'Set Options'.
     Keyword Filter
     View   Per page   Messages since
    New threadMessages 1 to 1 of 1 (Total: 1)First Prev Next Last
    Subject 
    Author 
    Date 
      Find the computer name from IP Address
    Yamuna 6:41 8 May 01 
    Last Visit: 12:00 Friday 1st January, 1999First Prev Next Last

    Home >> Date / Time handling >> General
    last updated 27 Jan 2000
    Article content copyright Stas Levin, 2000
    everything else © CodeProject, 1999-2001.
    The Code Project View our sponsorsClick here for Dundas Consulting - experts in MFC, C++, TCP/IP and ASPAdvertise on the CodeProject