Re: VS2005 and VS 6.0
- From: Joseph M. Newcomer <newcomer@xxxxxxxxxxxx>
- Date: Wed, 14 Jun 2006 00:21:47 -0400
Yes, you are to relearn the entire GUI. What good would it be to maintain compatibility?
That just encourages productivity, and it is much more important to spend massive amounts
of time trying to figure out what you knew how to do than to actually do something useful.
The ruby slippers appear not to work very well, but walking widdershins around your form
three times sometimes has an effect. Exactly what effect, mind you, is unpredictable,
but, hey, they're only programmers, and they have plenty of time to learn new interfaces!
As I said, I've read several articles that talk about how critical it is to maintain the
same user interface, and Microsoft has tried very hard to do this, from the API level
upward, except that a new batch of unsupervised children have been turned loose as the old
professionals retire or get promoted to where they can do no good.
All the stuff you are used to doing still exists, but instead of being in one place, it is
scattered in modal right-mouse-clicks distributed throughout the interface. Somehow, in
spite of the fact that 35 years ago we knew modal interfaces sucked, somebody decided that
this is the new, cool way of doing things. This ignores three decades of user interface
design principles, but that's all old stuff anyway, and what good is it?
Search around with right mouse clicks. I still have a lot of problems discovering things,
but on the whole, I've found that I can now build systems at only half the speed I used
to, as opposed to a tenth of the speed when I was first trying to figure out where they
hid everything.
Most of MFC is unchanged. CString and a few other classes have been split out; there are
a lot of interesting detailed changes in MFC, some of which my clients now require. But
I've changed 30K source lines between the two systems in a few hours, 60K source lines in
less than a day, and continue to work on the project in VS.NET. There are very few real
gllitches, unless you weren't careful about what you wrote in the first place. I have
only one very complex project that failed to convert, and its only defect is that a rich
edit control shows things in the wrong font, which might be cosmetic, but I haven't spent
more than 30 minutes working on it, about 50K lines. It essentiallyl compiled and
executed immediately except for the font glitch. Since it is a personal project (one of
my MVP Tips downloads) it hasn't been a high priority compared to the other crises in my
life, and real deadlines that pay real money.
Click on the class. Then go down to the Properties window and find the funny icon for
messages (not overrides), and add a handler for WM_PAINT.
By the way, has anyone noticed the stupidity that you can't actually do an override unless
the source code is open for the class that implements the method? Only a complete idiot
could have done something like this. It isn't necessary, and anyone who thinks it IS
necessary doesn't understand how programmers think. That's the REAL failure--that the
paradigms of VS.NET work AGAINST productivity so they can be "cool".
joe
On Tue, 13 Jun 2006 13:28:48 -0400, "saywhat" <no@xxxxxx> wrote:
No go on that. I see where it says "CanOverride" but it's all greyed outJoseph M. Newcomer [MVP]
when I click on the class (CFormView derived). My created classes don't
have this.
Am I expected to re-learn the entire GUI? Is there some arcane menu option
I can use? If I tap my ruby slippers together three times, will the class
wizard magically appear? Is Bill Gates the real "Wicked Witch of the West"?
It was a long process for me to learn MFC/C++ and by God, I did it. Not
master it, just learn it. I like it, I like creating controls
programmatically, using the message maps, overriding functions, etc. No
more of this now?
I stopped development of my project, small as it is, to await my acquisition
of VS2005. Now I can't seem to pick up where I left off. If there's a
definitive source for this info, tell me where to find it. The Class
Reference library online for mfc in .net is maddening - has mfc itself
changed from VS 6.0 ? Arrrgh!!!
And how do I override the OnPaint function? :-)
Thanks
B
"Joseph M. Newcomer" <newcomer@xxxxxxxxxxxx> wrote in message
news:b1et82lnidq6ipumdefn95p5l4gsv15bbg@xxxxxxxxxx
No, the class view is supposed to do that. It is supposed to take you to
the definition.
Click on the class. Go down to the properties. Select the proper obscure
icon. You will
see the messages.
This whole problem arose because Microsoft trusted the GUI design to an
incompetent twit
who never, once, in his entire life, actually programmed ANYTHING more
complex than "Hello
world", NEVER studied anything as useful as cognitive psychology, and
undoubtedly thought
the book "GUI Bloopers" was actually a design manual. What I described
above is what is
called "a distant planning horizon", and is indicative of a poor design of
an interface.
Anyone who has more than two functioning neurons and once read anything on
cognitive
psychology (e.g., "The Design of Everyday Things" by Donald Norman or
"Human Information
Processing" by Norman and Lindsay, "Human Problem Solving" by Newell and
Simon) would know
that such a design works directly against human operative models. The
result of allowing
children with huge egos to design tools intended for adults who actually
have REAL WORK to
do becomes sadly obvious in the VS.NET/2005 series.
When I say the IDE design of VS.NET/2005 sucks, I actually have an entire
mature science
behind me, with a theory that says that the design sucks. It isn't just
my opinion. A
discipline called "protocol analysis" is used to study how human beings
formulate
solutions to problems, and I've used it to show that VS.NET is
poorly-designed compared to
VS6. A comparison of the two products using protocol analysis, done by a
class of, say,
college undergraduates, halfway through "introduction to cognitive
psychology", using
experienced MFC programmers as test subjects (including those who are
experts at VS6 and
those who never saw it but started with VS.NET) would demonstrate
conclusively that VS.NET
sucks.
joe
On Tue, 13 Jun 2006 08:25:12 -0400, "saywhat" <no@xxxxxx> wrote:
Is there a definitive reference for how to adapt the different features inJoseph M. Newcomer [MVP]
2005 for 6.0? e.g., I can't seem to figure out how to override functions
like OnPaint, etc. I see them in the class view, but when clicked they
lead
me to the afxwin.h file's declarations.
Here's where the class wizard came in handy, I know that there's no more
class wizard in .net but how to use that functionality without?
I need a friggin tutorial for this... just got VS2005 and want to start
re-doing my 6.0 project. For now all I want is to override member
functions
for the MFC classes... any help here?
TIA
B
email: newcomer@xxxxxxxxxxxx
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
email: newcomer@xxxxxxxxxxxx
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
.
- Follow-Ups:
- Re: VS2005 and VS 6.0
- From: saywhat
- Re: VS2005 and VS 6.0
- References:
- VS2005 and VS 6.0
- From: saywhat
- Re: VS2005 and VS 6.0
- From: Joseph M . Newcomer
- Re: VS2005 and VS 6.0
- From: saywhat
- VS2005 and VS 6.0
- Prev by Date: Re: CString
- Next by Date: Re: VS2005 and VS 6.0
- Previous by thread: Re: VS2005 and VS 6.0
- Next by thread: Re: VS2005 and VS 6.0
- Index(es):
Relevant Pages
|