Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - raul338

#2701
Cita de: Seu¥ en 31 Julio 2009, 00:57 AM
Para hacerlo en modo visual, no bastaría con leer el contenido en una caja de texto?

no porque el codigo va leyendo cada caracter que se ingresa y va armando la esctructura (o al menos eso veo a simple vista, no lo probe ni lo vi bien todavia, es dificil ver e imaginar exactamente como funciona el codigo estando en blanco y negro xD xD). el "do" que esta en el void Main se tendria que poner en otro bucle que vaya recorriendo letra x letra de un textbox (aunque es algo arreglado con alambres xD, lo mejor seria rehacer eso en una clase utilzable, aunque seria mas costoso creo  :P)
#2702
 :D :D  ;-) ;-)

interesante, justo tenia que armarme una de estas, pero no que resuelva, sino que simplemente devuelva variables boleanas. (Seria como comprobar la formula SI de excel, solo que en lugar de celdas, hay variables  ;D)
#2703
Cita de: Meta en 26 Julio 2009, 02:04 AM
Aquí te puden ayudar.

http://social.msdn.microsoft.com/Forums/es-ES/vb56es/threads

Saludo.

jaja al principio pense que querias que buscara sobre threads, despues vi que era un foro  :huh: :laugh: :laugh:

pero ya alguien habia presentado la duda ahi, si ya has leido un buen tutorial de visual basic .net 2005 lo entenderas seguro  :D

Este es en C#
http://social.msdn.microsoft.com/Forums/es-ES/vcses/thread/7146a93f-b7ad-47fb-b2f9-06355f8bb5c5

Pero un MVP lo hizo en visual basic para descargar (no lo vi todavia jeje)
http://msmvps.com/blogs/peplluis/archive/2006/10/10/Actualizar-una-BD-Access_2C00_-utilizando-un-DataGridView.aspx
#2704
en .net el escenario por defecto es desconectado. Tienes que poner un evento al datagrid que ante cualquier cambio que guarde, o bien configurarlo para que funcione en escenario siempre conectado jejeje
#2705
Código (vbnet) [Seleccionar]
FileOpen(1, My.Application.Info.DirectoryPath & "\" & My.Application.Info.AssemblyName & ".exe", OpenMode.Binary)

:O ...en el mismo exe?? jamas pense que se podria eso. Igual...intenta si le pones atributos de solo lectura y sin compartir?
Algo asi (no es vb, es .....vb + pseudo codigo xD)
Código (vbnet) [Seleccionar]
FileOpen(1, My.Application.Info.DirectoryPath & "\" & My.Application.Info.AssemblyName & ".exe", OpenMode.ReadOnly, FileShare.None)
#2706
Cita de: MANULOMM en 14 Julio 2009, 21:19 PM
de hecho el problema del evento private static void OnTimedEvent(object source, ElapsedEventArgs e) esta en que es estatico, no puede llamar metodos de instacias que esten fuera del metodo pues este no tiene acceso a ese contexto, implicaria una reestructuracion de la libreria.

Atentamente,

Juan Manuel Lombana
Medellín - Colombia

Pero porque es estatico?? Que yo sepa no deberia serlo, no le veo un uso a instanciar un timer desde un metodo estatico  :-\
#2707
 :o pudiste hacer triggers en MySQL?? ¡¡Sorprendente!! (ejem...no es que haya intentando mucho pero tenia la idea de que no se podian hacer)

En cuanto a los sockets, tengo 2 aplicaciones que usan sockets diseñadas una en cada lenguaje (C# y VB.NET). Tengo el codigo completo de las 2, aunque la de C# es mas completa (la copie de un libro y trate de entenderlo, aunque nunca lo logre del todo, asi que por eso hice la version en VB.NET pero no me salio exactamente igual). Si quieres te lo mando por mail o algun otro metodo (es un programa de chat, podras agarrar las clases y usarlas en tu proyecto, o hacer como yo y tratar de hacer una clase "a tu medida" en base a estas)

En cuanto a la logica, imagina que una vez conectado entre los programas sea como un cliente DOS

podras enviar comandos con parametros y que el servidor los analize, Ejemplo

Código (dos) [Seleccionar]

(C = Cliente, S = Servidor)
C: LED1 ON
S: LED1 is ON
C: LED2 OFF
S: LED2 is OFF
C: LED3
S: LED3 is OFF (devuelve el estado del LED por ejemplo)


en cuanto a la clase que reciba los comandos (lo que se envia a travez de los sockets) lo haces como si fuese un programa de consola, solo que en vez de usar el tipico "Console.Readline()" (o usar algun menu, etc) tienes que esperar la respuesta del socket (usar eventos, delegados, es mejor con metodos asincronicos, puede parecer dificil al principio, si es asi prueba con metodos sincronicos y cuando tengas todo listo, pasalo a asincronico y veras que no es tan dificil)

bueno.....Espero que te sirva!!!

#2708
Cita de: 410n5o en 28 Abril 2009, 19:13 PM
Jaja la verdad no fue tan difícil hacer la libreria. Gracias por la ayuda pero mi problema principal es que dentro de un evento "private static void OnTimedEvent(object source, ElapsedEventArgs e)" no puedo llamar a un método, lo que necesito es que el método para obtener componentes se llame cada minuto, habrá alguna otra manera de hacerlo?
Gracias

Eso me suena a un problema que tuve hace un tiempo con una aplicacion con 3 timers por separado. Me tiraba errores porque no podia acceder a otros Threads (hilos del proceso). La solucion? Crear UN solo metodo que haga lo que tenga que hacer, pero no llamarlo directamente, sino invocandolo a travez de un delegado.

Ejemplo:

Todos saben que para cambiar un label de otro Formulario se hace asi:
Código (csharp) [Seleccionar]
Form2 miForm = new Form2();
miForm.Label2.Text = "Texto cambiado";


Pero si la segunda linea de ese codigo la hacias en el evento Tick de un Timer totalmente creado por codigo, tira el error que mencione antes. Y aqui la solucion
Código (csharp) [Seleccionar]

// Creamos el delegado
delegate void dlgCambiarDatos();

// .......................
// Evento Tick
private void Tick(object sender, ElapsedEventArgs e)
{
      CambiarDatos();
}
// .......................

void CambiarDatos()
{
    if (this.InvokeRequired)  // Preguntamos al form (this) si estamos accediendo desde otro hilo
    {
        // Instanciamos el delegado y lo invocamos desde el mismo hilo del form
        dlgCambiarDatos delegado = new dlgCambiarDatos(CambiarDatos);
        this.Invoke(delegado);
    }
    else
    {
        // Estamos en el mismo hilo
        // Aqui se cambian los datos comunmente sin errores :P
    }
}



Espero que a alguien le sirva!!!!
#2709
Código (csharp) [Seleccionar]
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
    if (checkBox1.Checked)
    {
        // El check esta marcado
        pictureBox1.Image = CambiarImageClick.Properties.Resources.OPEN;
    }
    else
    {
        // El check esta vacio
        pictureBox1.Image = CambiarImageClick.Properties.Resources.CLOSED;
    }
}

Hola!

como ves, simplemente cambias la imagen del PictureBox, segun si el checkBox esta marcado o no, a la imagen del recurso correspondiente. Para acceder a los recursos por codigo es

Citar
(NamespaceDelProyecto).Properties.Resources.(RecursoAUsar)


Espero que te sirva!!!!
#2710
Hola!

Lastima que no tengo el windows vista o 7 como para probar la transparencia, me hubiera gustado verla en accion  :-\

Supongo que el sub New esta dentro de un Formulario, y en .Net todo sub New en un formulario debe tener la llamada al metodo InitializeComponent() que es el que inicia y agrega todos los controles al formulario, cosa que en tu codigo no veo esa llamada.

Solo agrega "Call InitializeComponent()" como una linea mas (eso si, no se si debe ser como primera llamada, o luego de que fijes la transparencia, pero has pruebas jeje) y te deberian aparecer los controles.


Espero que te sirva!!!