El compilador está poniendo de relieve de forma automática la primera línea de la declaración de función para que cuando aparece el error. Eso significa que el error ocurre en algún lugar dentro de esa línea. A veces eso no es tan útil como te gustaría, pero en este caso, te dice mucho.
Específicamente, el único "tipo definido por el usuario" (realmente, el único "tipo") que aparece en la declaración de función es MSComctlLib.Button
. Lo que el mensaje de error del compilador le dice aquí es que no sabe qué es MSComctlLib.Button
. Por lo tanto, asume que es tipo "definido por el usuario" porque a menudo no sabe de qué está hablando el usuario. :-)
De cualquier forma, la solución es simple: necesita decirle al compilador qué es MSComctlLib.Button
. En este caso, se equivocó al suponer que es un tipo definido por el usuario. En realidad, es un control que se proporciona en la Biblioteca de controles comunes de Microsoft Windows. Para decirle a VB 6 sobre este control, debe agregar el componente correspondiente a su proyecto. Siga estos pasos:
En el menú "Proyecto", seleccione "Componentes".
En el cuadro de diálogo que aparece, recorra aproximadamente 2/3 del camino de la lista hasta las M's. Coloque una marca de verificación en los elementos "Microsoft Windows Common Controls 6.0" y "Microsoft Common Controls-2 6.0". (No se preocupe si el suyo tiene una designación paquete de servicio diferente.)

Haga clic en el botón OK. Si eres rápido, verás algunos controles adicionales agregados a tu caja de herramientas. Estos son los controles proporcionados por las bibliotecas de componentes que acaba de agregar. Entre esos controles se encuentra uno llamado Button
.
Por último, tratar de compilar y ejecutar el proyecto de nuevo, todo debería estar bien esta vez, porque ahora el compilador sabe qué tipo es MSComctlLib.Button
. En caso de que todavía no lo haga, es un botón que aparece en su barra de herramientas. El control de la barra de herramientas es proporcionado por la biblioteca Common Controls e incluye un tipo que define un botón individual que aparece en esa barra de herramientas.
¿Cómo espera que depuremos un problema como este a menos que publique algún código? Específicamente, la parte que el depurador resalta para usted ya que contiene el error. –
Private Sub Toolbar1_ButtonClick (ByVal Como botón MSComctlLib.Button) Select Case Button.Key Caso "traza": Call mntrace_Click Caso "snrplot": Call mnSnrplot_Click Caso "trazado espacial": Call mnskyplot_Click Caso "NMEA": Call mnNmea_Click Caso "navegación": Call mnNavigation_Click Caso "encuesta": Call mnSurvey_Click Caso "pausa/iniciar": Call mnpause_Click Caso "salvar": Call mnsave_Click Caso "imprimir": Call Caso mnprint_Click "fuera de línea": Call mnoffline_Click End Select End Sub –