Page 1 of 1
DATEPICKER PROBLEM
Posted: Fri Apr 17, 2020 9:45 am
by viren092002
WHEN WE ARE ENTER DATE IN OLD DOS BASED CLIPPER PROGRAM, WE JUST HAVE TO TYPE THE DATE
BUT NOW WE ARE USING HARBOUR WITH WINDOWS BASED SOFTWARE EXPERIENCE, DATEPICKER CONTROL IS NOT SO GOOD BEACUSE WE HAVE TO PRESS TAB OR ARROW KEYS FOR MOVING WITHIN CONTROL, HOW TO CHANGE THIS IN DATEPICKER ?????????????????
I HAVE SET DATE FORMAT AS DD/MM/YYYY AND TRY TEXTBOX WITH INPUTMASK AS 99/99/9999 BUT THIS IS NOT AS GOOD AS OLD CLIPPER DATE ENTRY
I AM USING HMG 3.1.1
ANYONE HAVE ANY SOLUTION THEN PLEASE HELP
Re: DATEPICKER PROBLEM
Posted: Fri Apr 17, 2020 3:45 pm
by andyglezl
Quieres SELECCIONAR (DatePicker) o solo TECLEAR (TEXTBOX) la fecha ?
*-----------------------------------------------------------------------------------------
Do you want to SELECT (DatePicker) or just KEY (TEXTBOX) the date?
TEXTBOX ( Date Type ):
@ <nRow>, <nCol>
TEXTBOX <ControlName>
[ OF | PARENT <ParentWindowName> ]
[ HEIGHT <nHeight> ]
[ WIDTH <nWidth> ]
[ FIELD <FieldName> ]
[ VALUE <cValue> ]
[ READONLY ]
[ FONT <cFontName> SIZE <nFontSize> ]
[ BOLD ] [ ITALIC ] [ UNDERLINE ] [ STRIKEOUT ]
[ TOOLTIP <ToolTipText> ]
[ BACKCOLOR <aBackColor> ]
[ FONTCOLOR <aFontColor> ]
[ DISABLEDBACKCOLOR <aDisabledBackColor> ]
[ DISABLEDFONTCOLOR <aDisabledFontColor> ]
< DATE >
[ ON CHANGE <OnChangeProcedure> ]
[ ON GOTFOCUS <OnGotFocusProcedure> ]
[ ON LOSTFOCUS <OnLostFocusProcedure> ]
[ ON ENTER <OnEnterProcedure> ]
[ RIGHTALIGN ]
[ INVISIBLE ]
[ NOTABSTOP ]
[ HELPID <nHelpId> ]
\HMG\3.4.4\DOC\data\index.htm
Re: DATEPICKER PROBLEM
Posted: Fri Apr 17, 2020 8:20 pm
by ROBROS
Some time ago I experimented with date textbox, see attached code, maybe its useful for you.
Code: Select all
#include "hmg.ch"
FUNCTION Main()
local cDat, cDatum
set language to german
set century on
set date to german
set date format to "DD.MM.YYYY"
set navigation extended
************************************
DEFINE WINDOW Date_1 ;
AT 120,120 ;
WIDTH 600 ;
HEIGHT 400 ;
TITLE "Wochentag eines Datums" ;
MAIN ;
FONT 'ARIAL' Size 14
END WINDOW
On Key F10 of date_1 action showdat()
****************************************************************
DEFINE LABEL datum_0
PARENT Date_1
ROW 40
COL 10
width 300
height 50
FONTNAME 'ARIAL'
FONTSIZE 12
FONTUNDERLINE .T.
autosize .T.
VALUE "Find out the CDOW() of a date"
END LABEL
DEFINE LABEL datum
PARENT Date_1
ROW 150
COL 10
width 300
height 50
FONTNAME 'ARIAL'
FONTSIZE 12
autosize .T.
VALUE "Enter date, go on with RETURN or F-10"
END LABEL
DEFINE LABEL endprog
PARENT Date_1
ROW 180
COL 10
width 300
height 50
FONTNAME 'ARIAL'
FONTSIZE 12
autosize .T.
VALUE "An empty or invalid date will terminate the program"
END LABEL
@ 210,10 TEXTBOX date ;
PARENT Date_1 ;
WIDTH 120 ;
HEIGHT 30 ;
Font 'ARIAL' SIZE 14 ;
value nil ;
date ;
On Enter showdat()
DEFINE BUTTON showdat
PARENT date_1
ROW 210
COL 140
CAPTION 'F-10'
ONCLICK showdat()
Fontname 'ARIAL'
FontSize 14
WIDTH 60
HEIGHT 30
END BUTTON
ACTIVATE WINDOW Date_1
date_1.maximize
RETURN NIL
*****************************************************
//CDOW() is shown in German. :-)
function showdat
cDat:=dtos(Date_1.date.value)
cDatum:=dtoc(Date_1.date.value)
if empty(cDat)
MsgInfo('No valid date')
else
MsgInfo(cDat)
MsgInfo(cDatum)
MsgInfo(cDatum+' = '+cdow(Date_1.date.value))
endif
Date_1.release
return
Regards
Robert
Re: DATEPICKER PROBLEM
Posted: Sat Apr 18, 2020 7:33 am
by serge_girard
Thanks for sharing Robert, good sample ! Could be handy for emulate DOS-like applications.
Serge
Re: DATEPICKER PROBLEM
Posted: Sat Apr 18, 2020 1:21 pm
by viren092002
andyglezl wrote: ↑Fri Apr 17, 2020 3:45 pm
Quieres SELECCIONAR (DatePicker) o solo TECLEAR (TEXTBOX) la fecha ?
*-----------------------------------------------------------------------------------------
Do you want to SELECT (DatePicker) or just KEY (TEXTBOX) the date?
TEXTBOX ( Date Type ):
@ <nRow>, <nCol>
TEXTBOX <ControlName>
[ OF | PARENT <ParentWindowName> ]
[ HEIGHT <nHeight> ]
[ WIDTH <nWidth> ]
[ FIELD <FieldName> ]
[ VALUE <cValue> ]
[ READONLY ]
[ FONT <cFontName> SIZE <nFontSize> ]
[ BOLD ] [ ITALIC ] [ UNDERLINE ] [ STRIKEOUT ]
[ TOOLTIP <ToolTipText> ]
[ BACKCOLOR <aBackColor> ]
[ FONTCOLOR <aFontColor> ]
[ DISABLEDBACKCOLOR <aDisabledBackColor> ]
[ DISABLEDFONTCOLOR <aDisabledFontColor> ]
< DATE >
[ ON CHANGE <OnChangeProcedure> ]
[ ON GOTFOCUS <OnGotFocusProcedure> ]
[ ON LOSTFOCUS <OnLostFocusProcedure> ]
[ ON ENTER <OnEnterProcedure> ]
[ RIGHTALIGN ]
[ INVISIBLE ]
[ NOTABSTOP ]
[ HELPID <nHelpId> ]
YES, I JUST WANT TO TYPE DATE, AND THIS IS GOOD SYNTEX FOR THIS, BUT I HAVE SEEN SOME SOFTWARE HAVE MORE POWERFUL DATEPICKER,
YOU CAN TYPE THE DATE AS WELL AS YOU CAN SELECT THE DATE FROM DROP DOWN CALENDER
ONE MORE ERROR IN THIS TEXT BOX IS THAT YOU CAN NOT USE BACK SPACE KEY IF YOU TYPE WRONG DATE,
WHEN PRESSING BACKSPACE IT STOP AT "DATE SEPARETOR" - "/ OR ."
WE HAVE TO USE ARROW KEY TO MOVE INSIDE TEXTBOX DATE FUNCTION, WE CAN NOT USE BACKSPACE
CAN ANY ONE HAVE IDEA HOW TO DEVLOP THIS TYPE OF CODE
\HMG\3.4.4\DOC\data\index.htm
Re: DATEPICKER PROBLEM
Posted: Sat Apr 18, 2020 1:22 pm
by viren092002
ROBROS wrote: ↑Fri Apr 17, 2020 8:20 pm
Some time ago I experimented with date textbox, see attached code, maybe its useful for you.
Code: Select all
#include "hmg.ch"
FUNCTION Main()
local cDat, cDatum
set language to german
set century on
set date to german
set date format to "DD.MM.YYYY"
set navigation extended
************************************
DEFINE WINDOW Date_1 ;
AT 120,120 ;
WIDTH 600 ;
HEIGHT 400 ;
TITLE "Wochentag eines Datums" ;
MAIN ;
FONT 'ARIAL' Size 14
END WINDOW
On Key F10 of date_1 action showdat()
****************************************************************
DEFINE LABEL datum_0
PARENT Date_1
ROW 40
COL 10
width 300
height 50
FONTNAME 'ARIAL'
FONTSIZE 12
FONTUNDERLINE .T.
autosize .T.
VALUE "Find out the CDOW() of a date"
END LABEL
DEFINE LABEL datum
PARENT Date_1
ROW 150
COL 10
width 300
height 50
FONTNAME 'ARIAL'
FONTSIZE 12
autosize .T.
VALUE "Enter date, go on with RETURN or F-10"
END LABEL
DEFINE LABEL endprog
PARENT Date_1
ROW 180
COL 10
width 300
height 50
FONTNAME 'ARIAL'
FONTSIZE 12
autosize .T.
VALUE "An empty or invalid date will terminate the program"
END LABEL
@ 210,10 TEXTBOX date ;
PARENT Date_1 ;
WIDTH 120 ;
HEIGHT 30 ;
Font 'ARIAL' SIZE 14 ;
value nil ;
date ;
On Enter showdat()
DEFINE BUTTON showdat
PARENT date_1
ROW 210
COL 140
CAPTION 'F-10'
ONCLICK showdat()
Fontname 'ARIAL'
FontSize 14
WIDTH 60
HEIGHT 30
END BUTTON
ACTIVATE WINDOW Date_1
date_1.maximize
RETURN NIL
*****************************************************
//CDOW() is shown in German. :-)
function showdat
cDat:=dtos(Date_1.date.value)
cDatum:=dtoc(Date_1.date.value)
if empty(cDat)
MsgInfo('No valid date')
else
MsgInfo(cDat)
MsgInfo(cDatum)
MsgInfo(cDatum+' = '+cdow(Date_1.date.value))
endif
Date_1.release
return
Regards
Robert
THANKS FOR SHARING YOUR CODE,
Re: DATEPICKER PROBLEM
Posted: Sat Apr 18, 2020 2:07 pm
by mol
I don't understand - datePicker allows you to to enter date manually, you can change year, month and day by keyboard arrow keys. You can also select it by mouse - by clicking left and right arrow you can select previous/next month, by clickich mont or year, you can clickly change to month select, year select or even ten years period select.
In my opinion it's enough powerful.
Re: DATEPICKER PROBLEM
Posted: Sat Apr 18, 2020 2:10 pm
by andyglezl
ONE MORE ERROR IN THIS TEXT BOX IS THAT YOU CAN NOT USE BACK SPACE KEY IF YOU TYPE WRONG DATE,
Porque usar BACKSPACE ??? Intentaste de esta forma ?
*--------------------------------------------------------------------
Why use BACKSPACE ??? Did you try this way ?
Code: Select all
@ 050 , 060 DATEPICKER Mifecha OF Main1 VALUE DATE() WIDTH 120 HEIGHT 25 FONT "Verdana" SIZE 9 ;
TOOLTIP "+ Suma - Resta" UPDOWN RIGHTALIGN FORMAT "dd/MM/yyyy"
Re: DATEPICKER PROBLEM
Posted: Sat Apr 18, 2020 2:41 pm
by ROBROS
Today users are quite different from old Dos users like many of us are. I even doubt whether they know about the existence of the backspace key.

What will they do? They make a double click on the entered date and voilà: they can enter the date from the mostleft position.
Robert
@ andy: I will give your code a try.
Re: DATEPICKER PROBLEM
Posted: Tue Apr 21, 2020 3:15 pm
by viren092002
THANK YOU ALL FOR YOUR KIND REPLY