Full Version: Access Diary GUI
UtterAccess Discussion Forums > Microsoft® Access > Interface Design
samrad
Here's a project I did for my girlfriend, mainly so I could goof around with Access forms. Any suggestions or comments? I attached a screen shot, the file is a link on my website. I think you'll need Access 2k3 to view it, haven't tried it with 2k2 yet.

http://www.isamrad.com/downloads/AccessDiary2003.zip

Disclaimer:
This isn't related to Microsoft in any way, just my own creation.
samrad
Sorry the attachment is to large to post so i have a link to it on my website: http://www.isamrad.com/downloads/AccessDiary2003.zip
mmsayed
That looks (and works) great! That has to be one of the best guis I have seen. What program did you use to create the graphics? By the way I was able to open your file with 2k2.

Mehdi
samrad
Thanks! You can take a look at the latest version of msn instant messenger for the graphical inspiration!
r_cubed
VERY VERY neat. If this is the sort of interface that you can get with Ak3, then "lead me to it" ......
tomhendrickx
VERY NICE!, can you post your db in 2000 format, the emations for what do you use them ?
samrad
I'll see if i can cook up a 2000 version, the emoticons are for your mood when writing the entry.
pwrsales
That is what I am talking about, a great GUI!!

If I understand correct, you made it in Access 2003 ... but apperently Access 2002 reads it...

The graphics and Icons look fantastic!

A inspiration to me , thank you!
dmtelf
A really impressive GUI - well done!

Out of interest, how did you implement the * next to text options e.g. "Start writing in diary" / "View previous entries" etc? It's simple, but very effective.

Access 2002 controls have a 'On Mouse Move' event which can be used to turn the visibility of a * on, but I am not sure how to turn the *'s visibility off when the mouse is moved away from a text control or icon.

DMTelf
davidr505
Would you mind Posting some screen shots of this so that those of us without Access 2002 or 2003 can see your work?
samrad
a screen shot is attached to the first message, I'll see if I can create a 2000 format for ya today
pwrsales
By the way, is Access2003 (upgrade or not) expensive?

Do they have a Developer Edition?

Best regards
tandre
Wow ! Great work !
samrad
It'll take some work to move it to 2000 since I use some new object model methods so I don't think I'll be able to post in 2000 format soon. Looks like you'll need Access 2002 or later for now, sorry about that!

Regarding Access prices and Developer Edition:
There's another thread in the Access 2003 forum on the developer edition. Basically it's called: Visual Studio Tools for the Microsoft Office System. It's an add on after you purchase Access 2003 and does not include Access 2003, but does include the right to redistribute the runtime. You can see this link for more information: http://msdn.microsoft.com/vstudio/office/ ... 109 for upgrade and 229 for full on buy.com ...the upgrade is $89.99 on amazon.
samrad
Quote:
Out of interest, how did you implement the * next to text options e.g. "Start writing in diary" / "View previous entries" etc? It's simple, but very effective.

Answer:
both open the same form, start writing opens it and moves to a new record and view previous just opens it and moves it to the first record. I could update to move it to the last record so you see your last diary entry.

Quote:
Access 2002 controls have a 'On Mouse Move' event which can be used to turn the visibility of a * on, but I am not sure how to turn the *'s visibility off when the mouse is moved away from a text control or icon.

Answer:
Right, the mouse move on a button or label is used for the turing 'hot zones' on, and the detail section's mouse move is used to turn them off.
samrad
Sorry, I misunderstood your question :-) The * at the end is the mouse move, and then on the mouse move of the detail section you remove it.
brendanobrien1
Excellant GUI I must say and I have developed alot of s/w packages that are now on the market and did until now pride myself on the GUI but oh my god it looks good. I can figure out how you did eveything else but what did you use for the tool tip help that wipes to the right at the top of the screen. (Please share... it looks very smooth)

Also for the Nav buttons is that just a On MouseMove effect that changes the border to etched and once clicked border color is equal to vbblack if not then how... please i love genuine smart design and thive on sharing what i know to learn what others know.

But seriously credit where credit is due. Become a contortionist and pat yourself on the back.WELL DONE!!!!!!!

aka Phoenix
duda
Good Job


That has to be one of the best guis I have seen too....

My only suggestion is remove default navigation buttons in Entry Forms
Stevo
i think the way to turn it off is to assign the appropriate function that removes the * (or whatever) to the OnMouseMove event of the surrounding form area. Or at lease that should be a start. Maybe something in the deactivate event of the form or elsewhere as well.

I am truly amazed by this gui btw. Is this something that could fully be replicated in acess 2000-2002? I assume it is but r_cubed's comment makes me not so sure.

Can you explain why 2003 is needed or give ANY hints????

I LOVE IT!!!!!!!!!!!!!!!!!!!!!!11
samrad
Quote: tip help that wipes to the right at the top of the screen:
Answer:
'********************************************************************************
**********
'used to simulate the writing of the text in the status text
'********************************************************************************
**********
Public Sub WriteOutStatus(sText As String)
Me.TimerInterval = 0
lblStatus.Caption = ""
For i = 1 To Len(sText)
lblStatus.Caption = Left(sText, i) & "_"
Sleep 0.01
Next i
Me.TimerInterval = 1000
End Sub

'********************************************************************************
**********
'idles for the amount of time passed in
'********************************************************************************
**********
Public Sub Sleep(sngTime As Single)
Dim sngStart As Single
sngStart = Timer
Do
DoEvents
Loop Until sngStart + sngTime < Timer
End Sub

Quote: MouseMove effect that changes the border to etched and once clicked border color is equal to vbblack
Answer: I show and hide the box with the etched effect

Quote: My only suggestion is remove default navigation buttons in Entry Forms
Answer: Thanks! I was planning to but since this was a beta I left it there for when my upper nav buttons broke (at times when deving..)

Quote: i think the way to turn it off is to assign the appropriate function that removes the * (or whatever) to the OnMouseMove event of the surrounding form area
Answer: yup, detail mousemove event

Quote: Is this something that could fully be replicated in acess 2000-2002?
Answer: Yup, totally. Except I used the form.move method and that doesn't exist in Access 2k so I'll have to find another way to do that before I port it back. It is currently a 2002 format database, so only Access XP and higher can open it.
Stevo
Just realized i had replied to an answer you gave already. I was on page one and didn't realize their was a page two till now. That always messes me up.

Anyway i have learned alot from you and you have been very generous with your code, which is not always the case.

On question. From what i can figure out from your post i have made a guess as to the code in the on timer event.

Am i close???


Private Sub Form_Timer()

Static BlinkingCursorOn As Boolean

Select Case BlinkingCursorOn

Case True
Me.lblStatus.Caption = Left(Me.lblStatus.Caption, (Len(Me.lblStatus.Caption) - 1))
Case False
Me.lblStatus.Caption = Me.lblStatus.Caption & "_"
Case Else
End Select

BlinkingCursorOn = Not BlinkingCursorOn

End Sub
samrad
Yup, my code is pretty much the same as yours:

'********************************************************************************
**********
'the form timer controls the blinking of the status bar cursor
'********************************************************************************
**********
Private Sub Form_Timer()
If Right(lblStatus.Caption, 1) = "_" Then
lblStatus.Caption = Left(lblStatus.Caption, Len(lblStatus.Caption) - 1)
Else
lblStatus.Caption = lblStatus.Caption & "_"
End If
End Sub
r_cubed
Once again, this is a BRILLIANT interface.

I am particularly interested though in where you got the icons used on the diary from.

I mean the "Previous", "Next", "New",Calendar", "Search buttons across the top, and the small icons down left and top-right (an * appears as you move over them) , as well as the "emoticons" area.

Or are these that a part of the "Access 2003 "Themes" that you alluded to earlier.
timn
Samrad,

Fantastic GUI. You have a talent at the design game!!

Could you show your code regarding the on mouse over effect for the navigation buttons.
Or do a sample demo database to show how you used onmouseover in this way?

Thanks
Tim
samrad
Quote: Or are these that a part of the "Access 2003 "Themes" that you alluded to earlier.
Answer: not really, the icons were from a variety of places. Some I crafted in photoshop, others were from a clipart CD, others where from the windows system altered a bit.

Quote: Could you show your code regarding the on mouse over effect for the navigation buttons.
Answer: Sure!

'********************************************************************************
**********
'mouse moved over the previous button, set the hotspot visible
'********************************************************************************
**********
Private Sub hot1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
TurnOnHotSpot "hot1"
End Sub

'********************************************************************************
**********
'this will check to see if the hotspot is turned on for a control, if it is not then
'it will turn it on. only one control can have a hotspot on.
'********************************************************************************
**********
Public Sub TurnOnHotSpot(sControlName As String)
'If this button is alread highlighed do nothing
If Me.Controls(sControlName).SpecialEffect > 0 Or Me.Controls(sControlName).Caption <> "" Then
'nothing, already selected
Else
ResetHotSpots
fAlreadyResetAllHotSpots = False
Select Case sControlName
Case Is = "hot3"
HideMoodPopup
Case Is = "hot5"
HideCalPopup
Case Else
HideAllPopups
End Select

If Left$(Me.Controls(sControlName).Tag, 1) <> "*" Then
Me.Controls(sControlName).SpecialEffect = 3
Else
Me.Controls(sControlName).Caption = Left$(Me.Controls(sControlName).Tag, 1)
End If
End If
End Sub
videocorner
Perhaps the best GUI I have ever seen. Excellant Job samrad!

Tim
Whaifiza
Conglts, very professional interface, well done.
samrad
Howdy again! I've recieved a bunch of requests for the source so I posted it on my website with more description. Check out http://www.isamrad.com/access and click the sample link.

Also, a few of us here in Redmond are starting a Access RSS feed to give people news/tip/tricks/and sample databases. If you already use a RSS reader feel free to add one more to the list. And if there is anything you would like to see there just shoot me a email: samrad@microsoft.com

thanks!
-sam
dmtelf
*Many thanks* for posting the source code - much appreciated!!

Matt
videocorner
Yes, thank you very much.

Tim
footbinc
That is awesome! Where did yea dig out those icons for cutting/printing/etc...?

Cheers

Ben

P.S -> Awesome.
samrad
Most of them came from the windows ui/MSN ui & enhanced by me a bit in photoshop.

Nice animal in your pic, what is it? A ferret?
tormod
@samrad

Is your download location dead?

Best regards
Tormod Torgersen
padnpen23
Considering the last post was in 2004, I'm betting "yes!"

Anyone have an old copy of this database, a mirror, or some screenshots?
jhardy66
It is too large to attach, but I am posting a slightly modified version I have of it to one of my sites (URL below).

http://jhardy66.myweb.uga.edu/ua/AccessJournal.zip (Approx. 1.05 MB)

I played around with what Sam had and threw in a third language (italian). Please excuse my poor Spanish/Italian as I wrote some of the items in quite a long time ago. I haven't messed with this thing in over three years!

However the code is almost completely Sam's...I made very minor changes. If you have any questions on it, I will try to re-familiarize myself with it and help out any way I can.


HTH,
kangarooman
Wow!!! That is an awsome app!!! Very nice. Keep up the good work.

Dave
jhardy66
yeah...I wish I could take credit for that app's look! Sam did an amazing job, as he does with every app I've ever seen him "throw together."

Maybe now that I've opened this baby back up I will clean up the languages and maybe add some "skinning" capabilities to it. Oh if I had infinite time to play!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.