Visual Basic.NET - Form siempre visible

 
Vista:

Form siempre visible

Publicado por JAVIER (4 intervenciones) el 09/12/2016 19:33:06
Hola, estoy haciendo una aplicacion para autocad, una liberia DLL, esta funcionando perfectamente, pero al ejecutar desde la aplicacion un comando cad, el form se cierra, pues yo cierro la instruccion con me.close, habrá una manera de que el form activo ejecute el comando sin cerrarse? es decir. que envie la instruccion a autocad y no sea necesario cerrarse,que esté siempre visible?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 697
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Form siempre visible

Publicado por Miguel (476 intervenciones) el 09/12/2016 22:03:46
No entiendo. ¿Al ejecutar un comando se te cierra la aplicación?... Si es así, pues supongo que estará provocando algún error que no capturas que termina cerrando todo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.526
Plata
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Form siempre visible

Publicado por Wilfredo Patricio Castillo (713 intervenciones) el 11/12/2016 03:39:49
Si lo que te cierra el formulario es el Me.Close(), simplemente quita esa línea y ya no?.

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Form siempre visible

Publicado por Javier (4 intervenciones) el 12/12/2016 16:25:08
ok. voy a tratar de explicarme con más detalle, tengo un form1, con un control (Button 1) que al hacer click, ejecuta un comando en AutoCAD, es decir, va al programa activo, en este caso AutoCAD y ejecuta un comando. hasta ahí no hay problema, me funciona perfectamente, solo que para que ejecute el comando debo cerrar el formulario antes, para que AutoCAD ejecute el comando.
yo necesito que ejecute sin cerrar el form de VB.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
'modulo que define el comando
 
Module SendCommand
    Public Sub SendACommand1(ByVal Comcad As String)
        Dim acDoc As Document = Application.DocumentManager.MdiActiveDocument
        '' execute send command
        acDoc.SendStringToExecute(Comcad, True, False, False)
    End Sub
End Module
 
 
 
'evento que ejecuta el comando
 
Private Sub TreeView1_DoubleClick(sender As Object, e As EventArgs) Handles TreeView1.DoubleClick
        Dim InsertComp As String
        InsertComp = TreeView1.SelectedNode.Name
        Select Case InsertComp
            Case "LB"
                CondFitt_1()
                SendACommand1("_use1 ")
                Me.Close()
            Case "LL"
                CondFitt_1()
                SendACommand1("_use2 ")
                Me.Close()
            Case "LR"
                CondFitt_1()
                SendACommand1("_use3 ")
                Me.Close()
            Case "TB"
                CondFitt_1()
                SendACommand1("_use4 ")
                Me.Close()
            Case "T"
                CondFitt_1()
                SendACommand1("_use5 ")
                Me.Close()
            Case "Sys-01"
                Seal_01()
                SendACommand1("_use1 ")
                Me.Close()
        End Select
    End Sub
Nota: si no cierro el form al final (Me. Close) no pasa el AutoCAD como documento activo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.526
Plata
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Form siempre visible

Publicado por Wilfredo Patricio Castillo (713 intervenciones) el 14/12/2016 01:47:37
Y no te sirve Me.Hide();

Con lo cual lo ocultas sin descargarlo.

Saludos cordiales,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Form siempre visible

Publicado por javier (4 intervenciones) el 14/12/2016 19:47:20
no.... me.hide igual cierra o "oculta" el form...la idea es que yo siga viendo mi form y al mismo tiempo la pantalla de autocad...es como si vieras varias ventanas al mismo tiempo....pero la diferencia es que una ventana es mi form y la otra ventana es la pantalla de autocad. como si fuese una paleta de herramientas mas de autocad....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 697
Bronce
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Form siempre visible

Publicado por Miguel (476 intervenciones) el 14/12/2016 20:31:40
Mmm, creo que te refieres al atributo "TopMost" del formulario; establecelo en True.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Form siempre visible

Publicado por javier (4 intervenciones) el 15/12/2016 14:35:31
ok ya probé top most y esto funciona para las form de la misma aplicación...voy a dar mas detalles, imagínate que vas a hacer una aplicación, y en la aplicación tienes un botón, que al hacer click, ejecuta un comando en otro programa, en este caso AutoCAD.
en este momento el programa AutoCAD es el programa "activo", es decir..ejecuta el comando, por ejemplo "insertar bloque", y lo ejecuta sin otra instrucción previa a la dada por el evento click de la aplicación desarrollada. pero para que AutoCAD sea el programa "activo" por código, debo cerrar el form, de allí en el código la instrucción "me.close."

Este es el caso hasta el momento, ahora imaginemos que se ejecuta el comando "insertar bloque" pero como el form esta cerrado. tengo que "Abrir" otra vez la aplicación para ejecutar otro comando, en este caso para "insertar otro bloque" o "Borrar"por ejemplo.

Lo que yo busco, es que el form de la aplicación desarrollada, siempre este visible, cuando ejecute el comando y AutoCAD sea el programa "activo". es decir que se comporte como una ventana o paleta de herramienta. así puedo ejecutar varios comandos de AutoCAD sin tener que "cerrar" y "abrir el form consecutivamente.

ya probé con me.hide y con Dispose y nada....por favor un genio que se luzca....

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Wilfredo Patricio Castillo
Val: 1.526
Plata
Ha mantenido su posición en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

Form siempre visible

Publicado por Wilfredo Patricio Castillo (713 intervenciones) el 15/12/2016 21:42:17
Cuando ejecutas el comando, uno de esos parámetros debe ser para que lo ejecutes como modal.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar