在我看来,threed32.ocx(Sheridan SSControls)应该被抛弃,因为它存在很多问题。它已经不再得到支持,所有的控件在可见时都会抢夺焦点,包括面板和框架(!),它很难升级到VB.NET - 这还不止。对于我的公司来说,这些问题足以抵消它提供的额外功能 - 我们将把它从所有程序中删除。
Some of the discussion is too pessimistic IMHO. VB6 is not abandonware yet - we re not all doomed - though no doubt we will have to upgrade the code one day. Microsoft say:
The VB6 runtime is supported for the
full lifetime of Windows Vista,
Windows Server 2008 and Windows
7, which is five years of mainstream
support followed by five years of
extended support.
Microsoft are still supporting a number of their VB6 controls. Check the online list and only use the controls that they do support. These are the standard, tested, supported controls Clay is looking for in the original question. If you want to use third-party components, check whether they are still supported by the vendor. I would agree that you should always think hard about how much benefit you re getting before you introduce dependencies, which can be a support headache. If you use special components, try to wrap them in an abstraction layer. It might save some pain later if you need to replace them. You can hide all the fancy features except the ones you really need.
A final word - don t use the ForeColor property in the SSCommand. There s no corresponding BackColor property, so you have no guarantee that your special foreground colour will contrast with the system background "button face" colour. Just like Raymond says.