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 - LeandroA

#491
Cita de: E0N en 10 Junio 2008, 03:22 AM
Y si no logras traducirlo pregunta Leandro, que te hecho una manita :P

Hola Te lo agradeceria Eon, porque me queda la duda si hace un subclass, si es asi creo que en visual no voy a tener mucha suerte.

Saludos
#492
Buenas alguien sabe con que api puedo obtener la ventana (ventana hija, control) que tiene el foco, pero no me refiero a una ventana padre sino a el control que tiene el foco

ya probe con:

GetFocus, pero este solo me devuelve el hwnd dentro de mi aplicacion, yo lo que quiero es saber dentro de todo windows cual es el hwnd que tiene el foco.

GetForegroundWindow me devuelve el hwnd de la ventana padre activa, por lo tanto no me sirve.

GetActiveWindow ni a palos

WindowFromPoint tampoco porque yo podria activar una ventana con el teclado

alguien conoce alguna forma?

Saludos
#493
hola te pongo un ejemplo de como enviar un archivo en trozos, claro que tenes que poner la parte del tamaño y bueno vos sabes.


Dim Pos As Long
Dim Segment As Long
Dim SegmentCount As Long
Dim LenRest As Long
Dim SendFileComplete As Boolean
Dim FreeF As Integer
Const Buffer = 4096
Dim SendingFile As Boolean
Dim FileData() As Byte

Private Sub SendFile(ByVal FileName As String)
Dim LenFile As Long
Dim TotInteger As Long

LenFile = FileLen(FileName)
SegmentCount = Val(LenFile / Buffer)
TotInteger = SegmentCount * Buffer
LenRest = LenFile - TotInteger
Segment = 0
Pos = 1

ReDim FileData(Buffer - 1)
SendingFile = True
SendFileComplete = False
Open FileName For Binary Access Read As #FreeF

call SendNextSegment

End Sub

Private Sub objWinSock_SendComplete()
If SendingFile Then SendNextSegment
End Sub


Private Function SendNextSegment()

If objWinSock.State = 7 Then
    If SendFileComplete Then
        SendingFile = False
        Call CloseConection 'funcion que cierra la conexion o termino el envio del archivo
        Exit Function
    End If
     
    If Segment = SegmentCount Then
            If LenRest > 0 Then
                ReDim FileData(LenRest - 1)
                Get FreeF, Pos, FileData
                Close #FreeF
                SendFileComplete = True
                If objWinSock.State = 7 Then objWinSock.SendData FileData
   
            End If
        Else
            Get #FreeF, Pos, FileData
            If objWinSock.State = 7 Then objWinSock.SendData FileData
            Pos = Pos + Buffer
        End If
   
    Segment = Segment + 1
End If
End Function
#494
Hola Seba esta muy bueno, esta lindo para un widget. tenes alguna pagina de todas la data que se puede obtener con WMI?.


SAludos
#495
Cita de: skapunky en  6 Junio 2008, 15:04 PM
Dos cosillas que no tienen importancia...

1º para que declarar una constante "Delimiter" si es mas corto escribir "|".

2º La función beep juraria que no hace falta llamarla con un call, poniendo Beep deberia bastar.

a ver, si dejan de poner pabadas

esto es un tuto, imaginate que yo en un tuto pongo esto

SendMessage Me.hWnd, &HA1, 2, 0&

bueno, me decis que carajo hice?,que aprenderias a copiar y pegar nada mas, ahora si yo pongo

Const WM_NCLBUTTONDOWN = &HA1
Const HTCAPTION = 2

SendMessage Me.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&


y bueno con lo del Call o no Call, si no lo pusiste me parece muy bien y si lo pusiste tambien. no hay diferencia.

y bueno para no poner un post al pedo, acoto un dato mas al post para quienes utilizen winsock

nunca hagan algo como esto

Winsock1.SendData "Nombre" & DELIMITER & "Leandro"
Winsock1.SendData "Apellido" & DELIMITER & "Ascierto"

porque llegaria algo como esto

Nombre|LeandroApellido|Ascierto

Tampoco hagan esto

Winsock1.SendData "Nombre" & DELIMITER & "Leandro"
DoEvents
Winsock1.SendData "Apellido" & DELIMITER & "Ascierto"


hay varias formas de evitar esto una forma seria enviar un dato crear un bucle y cuando se cumpla el evento sendcomplete liberar el bucle y enviar el siguiente dato.
o bien crear un delimitador mas, almacenar todos los datos en una variable, luego enviar el tamaño de la variable y una vez llegado al receptor una data del tamaño de esta, separar los datos.
o con un metodo ping pong, dependiendo cada caso.

Saludos y no peleen
#496
Buenas, me gustaria dar mi opinión con respecto al tema, yo estoy 100% de acuerdo con la donación o aportes de códigos, de hecho cuando tengo algo también lo hago. porque?, esto hace que muchas personas puedan aprender de otras, inclusive yo tendría el beneficio de que alguien que sabe más que yo me corrija errores que yo no pude ver o supe solucionar, y de paso visitar el foro y encontrarme con algo nuevo para leer, sino sería sumamente aburrido.
Con lo de las respuestas mira Google o la MSDN, a veces es una forma muy rápida de salir de una situación o reponder por responder. en lo personal prefiero nada.

Bien entonces estoy de acuerdo con Cobein ya que siempre hace buenos aportes.
Tughack sin querer atacarte ni nada en contra tuyo, pero si vas a hacer un comentario de que hay mucha basura en el codigo, me gustaria un argumento más preciso, y ver el código correcto, con fines de entender que esta mal en el codigo publicado.

Saludos
#497
Cita de: cobein en 31 Mayo 2008, 20:48 PM
Muy bueno, la verdad me gusta mucho el efecto ese y todo.

Sabes que vi un error que supongo es de logica, mientras arrastro los paneles hay veces que entran como en indesicion y flashean como que se quieren pegar y no todo a la vez, supongo que es algun if o algo del cDragMagnetic, pero la verdad no lo vi.

si se entra como a alocar la ventana, esto es porque seguramente tiene un control a la misma altura por devajo o en la misma direccion. esto puede ser una ventaja si se quiere alinear en diferentes alturas, pero bueno cuando son varias ventanas y estan desparramadas por cualquier parete puede pasar esto, lo que deberia hacer yo es poner la opcion para que solo se aline si esta dentro del area especificada, o que tome como referencia el control mas cercano.

Gracias.
#498
aaa si si  tenes razón, me falto quitar el tilde de comentario UserControl_Resize dentro del UserControl_Show, de todas formas esta propiedad solo se ejecuta en tiempo de ejecucion no en diseño.

Gracias nuevamente.
#499
Gracias seba123neo ya corregi el error de los colores me habia comido ponerle OleTranslateColor para los colores del sistema.
en cuanto a lo del panelOpen lo prove y me funciona bien, lo volvi a subir y puse un ejemplo.

Saludos
#500
Buenas, dos aportes en uno, se trata un Usercontrol de tipo Panel Contenedor y Una Clase cDragMagnetic que sirve para mover contendedores de controles estilo Drag&Drop pero bueno con algunas opciones.



CDragMagnetic.zip - Descargalo en UpSourceCode.com.ar

No lo e testeado mucho si alguien encuentra algun error o idea para agregarle a la clase o al ursercontrol no dude en decirlo.

By Leandro Ascierto