Tecnología

Inicio

Cómo escribir un control ActiveX

Cómo escribir un control ActiveX


Un control ActiveX es un componente de software que puede ser conectado a diferentes programas y se utiliza como si fuera una parte nativa del programa. Los programadores pueden escribir los controles ActiveX en cualquier lenguaje que soporte el desarrollo de modelo de objetos componentes (COM). Los ejemplos típicos de los controles ActiveX son botones de comando, cuadros de lista y cuadros de diálogo. Un control ActiveX puede ser creado utilizando Visual Basic, C # o VC ++. NET.

Instrucciones

Visual Basic

1 Abrir MS Visual Basic y cree un nuevo tipo de proyecto como "control ActiveX".

2 Crear un botón de comando, llamado cmdTest, y un cuadro de texto, llamado txtTest. Arrastre los controles de la caja de herramientas para crear estos.

3 Añadir las siguientes funciones:

setText Función Pública (TXT como secuencia)

txtTest.Text = txt

End Function

Private Sub cmdTest_Click ()

MsgBox txtTest.Text

End Sub

Esto pasará un valor a la caja de texto de la página Web. Cuando un usuario hace clic en el botón de comando, se mostrará este texto en un cuadro de mensaje.

4 Haga clic en "Herramientas" y luego "Asistente de empaquetado y despliegue" para guardar el proyecto. Guarde el proyecto como un paquete de Internet y el nombre como "ctlVBActive."

5 Crear una página HTML en un editor de texto, como el Bloc de notas.

6 Agregue el código siguiente:

<Select id = "drpValues" onclick = "send_value (esto)">

<Option value = ""> </ option>

<Option value = "valor1"> valor1 </ option>

<Option value = "valor2"> valor2 </ option>

<Option value = "valor3"> valor3 </ option>

<Option value = "valor4"> valor4 </ option>

<Option value = "valor5"> valor5 </ option>

</ Select>

<OBJECT ID = "ctlVBActive"

CLASSID = "CLSIDS 748FEF73-28D1-4889-A582-E5F8F526CDD1"

CODEBASE = "vbActiveX.CAB # version = 1,0,0,0">

</ Object>

7 Guardar y abrir el archivo en un navegador.

DO#

8 Open C # editor y crear un nuevo proyecto.

9 Agregue el código siguiente, para crear un control ActiveX:

using System;

using System.Runtime.InteropServices;

ANamespace espacio de nombres

{

ASignatures interfaz pública

{

string FName();

SName cadena ();

int Edad {get;}

}

[ClassInterface (ClassInterfaceType.AutoDual)]

public class AClass: ASignatures

{

public string FName()

{

volver "John";

}

cadena pública SName ()

{

volver "Ryan";

}

public int Edad

{

obtener {return 40; }

}

}

}

Guarda el archivo. Llamarlo "AClass.dll."

10 Compilar el archivo. El se hace utilizando un archivo del compilador llamado "csc.exe", que se encuentra en: \ WINDOWS \ Microsoft.NET \ Framework \ v2.0. Abrir este archivo de compilador, que se abre como una consola, y añadir el código:

regasm AClass.dll / TLB / código base

Este archivo de clase creada en el paso anterior se compila y se puede llamar desde una página HTML.

11 Crear un archivo HTML para llamar al control ActiveX:

<Html>

<Head>

<Script language = "javascript">

&lt;!-- Load the ActiveX object -->

var x = new ActiveXObject ( "ANamespace.AClass");

& Lt;! - Acceso al método ->

alerta (x.FName ());

alerta (x.SName ());

& Lt;! - Un acceso a la propiedad ->

alerta (x.Age);

</ Script>

</ Head>

<Body>

</ Body>

</ Html>

12 Guarde el archivo HTML y ejecuta en un navegador.

Visual C ++

13 Abra el editor de Visual C ++.

14 Crear un nuevo proyecto y seleccione "control ActiveX".

15 Añadir código para crear un nuevo icono

anulará CMyActiveXIconCtrl :: OnDraw (CDC * PDC, const CRect y rcBounds, const CRect y rcInvalid)

CBitmap :: LoadBitmap ()

CDC :: StretchBlt ()

Esta función se basará el icono de control ActiveX.

dieciséis Presione F5 para ejecutar el programa. En Visual C ++ .NET, el control se registra automáticamente.

17 Ir al menú "Herramientas" y haga clic en el envase del Test de Control ActiveX. Ir al menú "Editar" y haga clic en la opción "Insertar control". Aparecerá una ventana. Compruebe el "MyActiveX Icono de control", que ahora muestra la prueba de control de contenedor ActiveX que haya creado.