"Определяемый пользователем тип не определен" ошибка в VB 6 под Windows 7
Я использую Windows 7 и мой проект на VB 6.0. Я получаю ошибки во время выполнения моей программы. Он показывает ошибку:
пользовательский тип не определен.
вот мой код:
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
Case "trace": Call mntrace_Click
Case "snrplot": Call mnSnrplot_Click
Case "skyplot": Call mnskyplot_Click
Case "nmea": Call mnNmea_Click
Case "navigation": Call mnNavigation_Click
Case "survey": Call mnSurvey_Click
Case "pause/start": Call mnpause_Click
Case "save": Call mnsave_Click
Case "print": Call mnprint_Click
Case "offline": Call mnoffline_Click
End Select
End Sub
Как я могу решить эту ошибку?
3 ответов
компилятор автоматически выделяет первую строку объявления функции для вас, когда появляется ошибка. Это означает, что ошибка происходит где-то внутри этой строки. Иногда это не так полезно, как вам хотелось бы, но в этом случае вам удается рассказать довольно много.
в частности, единственным " пользовательским типом "(действительно, единственным" типом " вообще), который появляется в объявлении функции, является MSComctlLib.Button. Что сообщение об ошибке компилятора говорит вам здесь, что это не знает, что такое MSComctlLib.Button есть. Поэтому он предполагает, что это "пользовательские" введите, потому что он часто не знает, о чем говорит пользователь. :-)
в любом случае, исправление простое: вам нужно сказать компилятору, что MSComctlLib.Button есть. В этом случае он ошибся, предположив, что это пользовательский тип. Это на самом деле управление, предоставляемое в библиотеке общих элементов управления Microsoft Windows. рассказать глаг 6 о этой системе, нужно добавьте соответствующий компонент в проект. Выполните следующие действия:
в меню" проект "выберите"компоненты".
-
в появившемся диалоговом окне прокрутите около 2/3 пути вниз по списку до M-Х. Установите проверку с помощью элементов" Microsoft Windows Common Controls 6.0 "и" Microsoft Common Controls-2 6.0". (Не волнуйтесь, если у вас есть другой пакет обновления обозначение.)

нажать кнопку "ОК". Если вы быстро, вы увидите некоторые дополнительные элементы управления добавляются в Панель инструментов. Это элементы управления, предоставляемые библиотеками компонентов, которые вы только что добавили. Среди этих элементов управления есть один называется
Button.
наконец, попробуйте скомпилировать и запустить проект снова-на этот раз все должно быть хорошо, потому что теперь компилятор знает, что такое MSComctlLib.Button тип. В случае вы все еще не, это кнопка, которая появляется на панели инструментов. Элемент управления toolbar предоставляется библиотекой Common Controls и включает тип, определяющий отдельную кнопку, появляющуюся на этой панели инструментов.
Я думаю, вы просто скопировали и вставили этот код из другого места. Обычно, если вы хотите ссылаться на MSComctlLib, вы обычно будете делать первые шаги, указанные Коди Греем здесь, прежде чем вы сможете получить доступ к библиотеке типов.