What is the Alt+Tab order?

What determines the order in which icons appear in the Alt+Tab list? The icons appear in the same order as the window Z-order. When you switch to a window, then it comes to the top of the Z-order. If you minimize a window, it goes to the bottom of the Z-order. The Alt+Esc hotkey (gosh,…


The more I learn about Sweden, the weirder it gets

It must be really boring in Sweden in the winter. Things to do: Speed across the snow at 70kph by strapping a paraglider engine to your back. Eat rancid herring and call it a delicacy. (Fourth story.) Defend the northern border against invasion. Military service in Sweden is compulsory for all males. When your country…


Curling anyone?

The Granite Curling Club is having their annual open house today, October 18th 2003, from 2pm to 8pm. The Seattle facility is the only dedicated curling facility in the United States west of the Rockies. Bring sweatpants, flat-soled shoes, and $5. They’ll provide the brooms and duct tape. I became fascinated with curling many years…


Don’t let Marketing mess with your slides

It’s PDC season, so I thought I’d relate an anecdote about a conference from many years ago. I forget which conference it was, maybe GCDC 1996, we were all busy preparing our presentations and submitted them to the Microsoft conference representatives so they could apply the standard template, clean them up, print out copies to…


Scrollbars redux: Part 12

Reader Jeff Miller added Word-style scroll tips to our sample scrollbar program. Here’s how he did it: HWND g_hwndTT; /* tooltip control */ TOOLINFO g_ti; /* tooltip info struct */ BOOL g_fInScroll; /* Scroll state */ void CancelScrollTip() { if (g_fInScroll) { g_fInScroll = FALSE; SendMessage(g_hwndTT, TTM_TRACKACTIVATE, FALSE, (LPARAM)&g_ti); } } void UpdateScrollTip() { if…

The much-misunderstood “nop” action

Last month, the printers were reconfigured in our building and we got an announcement that went like this: Subject: Printer/Copier Reconfiguration Microsoft Digital Campus Program Action Required blah blah blah printers are being reconfigured blah blah blah Action(s) to be taken: No action is required as the print path information will remain the same. Sometimes…


Murphy’s law for school

If you know the answer to every question but one, the teacher will call on you to answer that one. I’m learning this rule all over again.


Why don’t notification icons get a message when the user clicks the “X” button?

If such a notification were generated, ill-behaved programs would just react to a click on the balloon’s “X” button with an annoying follow-up dialog like, “Are you sure you want to ignore my wonderful message?” So there was a conscious decision not to give them the chance. In the Before Time, software was trusted not…


Answer to previous exercise

If the program starts with the mouse already in the client area without moving, why do you get a beep? Because of the spurious WM_MOUSEMOVE message that is generated when a window is created. In this case, the spurious message is a good thing, since it lets us do our mouse work at window creation.