A Comment on the Original
Hello,
Thank you for the good book. As well as helping to gel some of my ideas about user interface design, and communicating with the user, it also gives me valuable ammunition for debates on the subject with other developers. I will be implementing some of your ideas in my next project.
One note that I would like to make concerns your footnote on page 90. You write
A rich text box control was used here because the text box control generates its own popup menu; if you want to open a popup menu in response to the a [sic] text box control's MouseUp or MouseDown event, the user must click the right mouse button twice, the first time to open the system-provided menu and the second time to open the application-defined popup menu. We know of no easy way to suppress the automatic popup menu generated by the VB runtime engine.
There is a way to accomplish this, although it is a bit of a hack.
Private Sub txtMenuTest_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button And vbRightButton Then
txtMenuTest.Enabled = False
txtMenuTest.Enabled = True
PopupMenu mnuPopup
End If
End Sub
One drawback of using this method on WinNT is that the menu appears as the right mouse button is depressed, as opposed to the usual case, which displays the menu when the mouse button is released. Putting the above code in the MouseUp event handler displays the symptoms that you detail in your footnote.
Again, thank you for the good book.
Submitted by: Nick Varacalli
Nick, of course, is referring to my original book -- Developing Windows Error Messages -- published by O'Riley and Associates. The book was written for programmers, not as humor per se, and discusses not only what is wrong with typical error messages but also how error messages could potentially be presented in a more coherent and explanatory fashion.
Also, since Developing Windows Error Messages was published, I have been pleased to note that some of the suggestions and principals discussed have been implemented in various applications from a variety of developers.
Of course, there are still plenty of applications where the error messages remain less than intelligible and less than intelligent ... so, keep those submissions coming.