Important alert: (current site time 7/16/2013 3:05:55 AM EDT)
 

winzip icon

Commercial XPCalendar

Email
Submitted on: 6/12/2002 4:40:13 AM
By: Zhu JinYong  
Level: Intermediate
User Rating: By 78 Users
Compatibility: VB 6.0
Views: 41954
(About the author)
 
     XPCalendar is a highly customizable built-in drop-down calendar that provides very sophisticated visual flexibility.It Provides the ability to highly customize the appearance of the control. All colors, border, and fonts can be modified to drastically change how the control looks.Border has up to 8 feathures,including [None], [Flat], [Raised Thin], [Sunken Thin], [Raised 3D], [Sunken 3D], [Etched] and [Bump] .The board color can choose with any Color.Free to set the H/V Gridline.The calendar Background can set to any color you like.: Not only does the control support placing an image or Grandient Color Box or simple Color Box to the the drop-down calendar's selected cell, it supports doing this is a variety of ways. You can tile,stretch the image with MaskColor.Defines the first day of the week, for determining which days are the weekend. This is completely separate from the Displayed Week Start which specifies which day of the week to place in the drop-down calendar's first column.You can draw transparent bitmap or Icon with Maskcolor to sign Today to make today alert.You can position this bitmap any where you like.Default Position is sychonized with the position of Today Text.Date Text can position any where inside the Cell.You can align the text Center,Left and Right plus X_Offset and Y_Offset.Use Arrow Left,Right,Up and Down to nagavite the Date and move the Focus Highligh Bitmap or Color Box.Use and to go back to the first day or the End day of Month respectively. Use and to increase or decrease one Month and don’t lose the “BookMark”. You can choose with one Mouse click or Double Click to collapse the Calendar. And,The Calendar has True HotTracking and Hover Selection Functionality!!! XPCalendar is totally designed for what your need!!!

 
winzip iconDownload code

Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. Afterdownloading it, you will need a program like Winzip to decompress it.Virus note:All files are scanned once-a-day by Planet Source Code for viruses, but new viruses come out every day, so no prevention program can catch 100% of them. For your own safety, please:
  1. Re-scan downloaded files using your personal virus checker before using it.
  2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.
  3. Scan the source code with Minnow's Project Scanner

If you don't have a virus scanner, you can get one at many places on the net including:McAfee.com

 
Terms of Agreement:   
By using this code, you agree to the following terms...   
  1. You may use this code in your own programs (and may compile it into a program and distribute it in compiled format for languages that allow it) freely and with no charge.
  2. You MAY NOT redistribute this code (for example to a web site) without written permission from the original author. Failure to do so is a violation of copyright laws.   
  3. You may link to this code from another website, but ONLY if it is not wrapped in a frame. 
  4. You will abide by any additional copyright restrictions which the author may have placed in the code or code's description.


Other 5 submission(s) by this author

 


Report Bad Submission
Use this form to tell us if this entry should be deleted (i.e contains no code, is a virus, etc.).
This submission should be removed because:

Your Vote

What do you think of this code (in the Intermediate category)?
(The code with your highest vote will win this month's coding contest!)
Excellent  Good  Average  Below Average  Poor (See voting log ...)
 

Other User Comments
6/12/2002 4:45:09 AMZhu JinYong

I took few month to complete this,so Please leave your comment and 5 Votes to shine my face!
(If this comment was disrespectful, please report it.)

 
6/12/2002 6:29:05 AMCarles P.V.

Here comes 5 little marbles.

Nice and very well finished work, Zhu.
(If this comment was disrespectful, please report it.)

 
6/12/2002 6:48:37 AMmichael doering

Hello Zhu,
>
very nice coding and useful app.
Five marbles from me
(If this comment was disrespectful, please report it.)

 
6/12/2002 7:09:59 AMJuha Söderqvist

5globes, very nice coding.
(If this comment was disrespectful, please report it.)

 
6/12/2002 7:15:34 AMjomblokeren

and i add your marbles collection...:)

(If this comment was disrespectful, please report it.)

 
6/12/2002 7:15:46 AMSolomon

I hope this shines your face. Five from me too 8-)
(If this comment was disrespectful, please report it.)

 
6/12/2002 10:00:19 AMRajnish Tatiwala

One of My Employees made a Similar Control in more than Three Months. & 2 be Very Frank it was Not half bettter than Yours. We used Labels , PictureBox & Other Controls to Make a Claalnder. 5 Marks to U & 10 to PlanetSource code for bringing this control to all the devlopers & Vb Fans
(If this comment was disrespectful, please report it.)

 
6/12/2002 8:20:45 PMZhu JinYong

Thanks for all positive comment.I would do better and contribute more to PSC community.
(If this comment was disrespectful, please report it.)

 
6/12/2002 10:57:58 PMsaseow

Shine that face.......5 from me!
(If this comment was disrespectful, please report it.)

 
6/13/2002 4:57:22 AMZhu JinYong

One Tip: Do you take notice of the way of MoveToEx API work in my code?I have seen many programmers on PSC defined the last parameter lpPoint as any.Standard definition should be like this:----Declare Function MoveToEx Lib "gdi32" Alias "MoveToEx" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, lpPoint As POINTAPI) As Long-----
Parameter lpPoint Points to a POINT structure in which the previous current position is stored.If you define lpPoint as any,sometime the return is very strange.
(If this comment was disrespectful, please report it.)

 
6/13/2002 8:58:19 AMJason

Five STARS from me too Pal. Good Job I like it.........
(If this comment was disrespectful, please report it.)

 
6/13/2002 9:38:05 AMKevin S. Gallagher

If you have not done it yet, pat yourself on the back. This is quality work and deserves one of those "best" coding projects I have seen on this site.
(If this comment was disrespectful, please report it.)

 
6/13/2002 11:37:19 AMJose M Serrano

Definetively 5 Oscars. I will give more if It could be possible :-)
(If this comment was disrespectful, please report it.)

 
6/13/2002 9:39:35 PMFred_Cpp

Ouch! more combos!
well, this one deserves at least *****.
Nice Work

(If this comment was disrespectful, please report it.)

 
6/14/2002 2:02:42 AMCharles Sollenberger

Excellent work! 'nuff said.
(If this comment was disrespectful, please report it.)

 
6/14/2002 7:53:22 AMmichael doering

Hello Zhu,
this is a very good work.
5 globes from me.
This works fine by me (WinME)
>
Suggestion:
Support 'Weeknumbers'
Make a Normal face 'and' an XP-Look
>

(If this comment was disrespectful, please report it.)

 
6/14/2002 7:27:04 PMJon

This is a great looking control. However, have you tried using more than one on a single form? Things go a bit wacky!
(If this comment was disrespectful, please report it.)

 
6/15/2002 2:40:26 AMcameron hussey

Its Awesome....Nice...5 Marbles from me :-)
(If this comment was disrespectful, please report it.)

 
6/15/2002 6:03:44 PMbytosaurus

still a good work! 5 * for you.
(If this comment was disrespectful, please report it.)

 
6/16/2002 10:48:32 PMZhu JinYong

Add WeekNumber Feature.Zip File updated.
(If this comment was disrespectful, please report it.)

 
6/17/2002 12:44:25 AMDana Seaman_

5 Globes. Just a thought. Allow attaching an ImageList to the control with a list of Icon Indexes that you could attach to certain dates. Could be used for Moon Phase or Weather Icons.
(If this comment was disrespectful, please report it.)

 
6/17/2002 12:53:52 AMsomeday

Great code

ллÄ㣬´ó¼Ò¶¼ÊÇÖйúÈË¡«£¡
(If this comment was disrespectful, please report it.)

 
6/17/2002 6:47:37 AMMing Han

Nice code.
(If this comment was disrespectful, please report it.)

 
6/20/2002 12:23:30 AMMalcolm

You get 5 from me also. It's not quite what I am looking for but is truly a nice piece of work.

(If this comment was disrespectful, please report it.)

 
6/20/2002 5:42:50 AMZhu JinYong

Thanks to michael doering to point out the Calendar display wrong weeknumber when Regional setting is set to German(Germany).I have test most different Regional settings.The result is OK.
(If this comment was disrespectful, please report it.)

 
6/20/2002 7:44:11 AMJon

As I said previously, this is a great looking control. It is, however a little disappointing that with all the updates and work you have put into this, the problems with using more than one instance of the control are still there. Create a form with just two of your controls. Highlight the date in the first of the controls and use backspace to clear it. Now either tab to or click into the other control and see what happens! Subsequent to this happening, date entry into one control causing odd things to happen in the other. Any ideas?
(If this comment was disrespectful, please report it.)

 
6/20/2002 8:03:17 PMZhu JinYong

Thanks,Jon.I will take a look this problem.
(If this comment was disrespectful, please report it.)

 
6/21/2002 9:51:36 PMTuanHai

It could be better if there is a fast way to change the month & year by choosing month & year from a collection like combo box. But the important is how to implement the xp combobox that is compatible with xp interface. (sory for my bad english)
(If this comment was disrespectful, please report it.)

 
6/28/2002 4:12:15 AMAndrey (HISoft)

Very nice. 5 from me
(If this comment was disrespectful, please report it.)

 
7/15/2002 11:29:27 AMJim Walker

I did not use your code but I leeked at the screen shot and all the comments and I figured you need 5 marbles for this :) Have a great day!!!
(If this comment was disrespectful, please report it.)

 
8/21/2002 4:59:13 AMTYO

Hey..Zhu 5....marbles from me hurray...:)
(If this comment was disrespectful, please report it.)

 
9/3/2002 10:39:31 AMgridrun

nice and useful! :D
(If this comment was disrespectful, please report it.)

 
11/6/2002 10:05:40 AMSub-Zero

the control is great, but there's something strange, I can't use any other calendar board style than None, all the others give me a white square instead of the month view
(If this comment was disrespectful, please report it.)

 
11/6/2002 9:51:58 PMJuan Carlos 23

Nice job but can you send me the EXE file at WorldCup23@cs.com
thanks
I give you *****5 Marbles....
(If this comment was disrespectful, please report it.)

 
11/7/2002 9:24:52 AMG. van Laar

Hi Zhu, Nice work.

You might want to look into a problem I saw where Week number 53 is displayed for the last week of 2003 where it should be Week 1 of 2004. See this MS article: http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q200299&

(And I also have the problem where I can't use any other calendar board style than None)
(If this comment was disrespectful, please report it.)

 
11/7/2002 2:28:55 PMVitaly15

5 marbles from me
nice coding
(If this comment was disrespectful, please report it.)

 
11/8/2002 5:48:28 AM

add another 5 to your collection. GOOD JOB!!! :)
(If this comment was disrespectful, please report it.)

 
2/20/2003 5:23:26 AMUrchin Software

My two eurocents:
1) with NT you can only use Style 0 - [None], all the other styles result in a blank calendar-dropdown -> I guess that's why it is called XP Calendar ;-)
2) if you use the backspace to clear the date in the control, you get an error.
Other than that it *very* cool!
5 well earned globes for you!
(If this comment was disrespectful, please report it.)

 
3/5/2003 7:09:46 PMCy Toad

The whole drop down is blank for me... How do I fix this??? -- -An yes I am on Win XP...
(If this comment was disrespectful, please report it.)

 
3/5/2003 7:15:17 PMCy Toad

Nevermind... Figured it out... Nice!
(If this comment was disrespectful, please report it.)

 
7/9/2003 7:13:35 PMKeir Gordon

Nicely done. Good to see a maintained and well coded project on PSCode. From one "Code Of The Month" winner to another, I give you 5 globes!!!
(If this comment was disrespectful, please report it.)

 
7/23/2003 10:51:26 AM

I haven't been able to find a way to permanently engage the calendar, does this control have this ability?

Otherwise very nice control.
(If this comment was disrespectful, please report it.)

 
9/15/2003 9:33:56 PM

5 stars!! well done piece of code. I really appreciate when people donate things that really help other coders. Thakns you!
(If this comment was disrespectful, please report it.)

 
1/27/2004 6:35:55 AM

There is a problem when you use more than one instance of the control. When you set a date in one control the date is reflected in the other instances. Also property changes do not only change the selected control but all instances ob XPCalendar.

That is because most of the properties AND the current value (look for m_value) are declared as Public in the mDefination.bas instead of declaring them as Private in xpdpcalender.ctl where they would be (re)instanciated with every new instance of the control.

My Tip: move at least m_Value to the .ctl.
Insiders should also decide wheather they really want to put all of the different properties into the property bag.

Besides this Zhu JinYong really deserves 5+ marbles especially for the art of doing allmost everything by own drawing routines!
(If this comment was disrespectful, please report it.)

 
4/25/2004 7:35:06 PM

i give you 5 for your very good coding, have anymore good source?, (february_thom@yahoo.com)
(If this comment was disrespectful, please report it.)

 
4/25/2004 7:36:29 PM

THANK'S FOR A VERY GOOD CODING, I GIVE YOU 5 FOR IT
(If this comment was disrespectful, please report it.)

 
1/21/2005 8:32:50 PMColdblade

ok
(If this comment was disrespectful, please report it.)

 
3/14/2005 3:06:42 AM

Can I give you 6?
(If this comment was disrespectful, please report it.)

 
3/21/2005 11:18:49 PMRob Crombie

Again it probably is my ignorance of OCX's or CTL's ?
I have trouble running this.
Could we have either -
A simple VBP which includes the CTL as a User Control
or
A simple VBP that expects the compiled OCX in the System32 folder ?
(I did manage to create the OCX and place it into the System32 Folder)


(If this comment was disrespectful, please report it.)

 
11/2/2005 4:27:32 AMRon

teriffic
(If this comment was disrespectful, please report it.)

 
1/15/2009 4:23:34 AMRhiana Jay

anything to shine that face... 5 stars! good work!
(If this comment was disrespectful, please report it.)

 

Add Your Feedback
Your feedback will be posted below and an email sent to the author. Please remember that the author was kind enough to share this with you, so any criticisms must be stated politely, or they will be deleted. (For feedback not related to this particular code, please click here instead.)
 

To post feedback, first please login.