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 - Eleкtro

#8811
Cita de: cbr20 en 31 Mayo 2013, 19:10 PM
Archivo1 y 2 estan siendo utilizados por otro.

No se quien estara usandolos si ya ha terminado el metodo de union de pdf.

Te has dejado algún objeto sin liberar y es quien "está usando" los archivos, pues los mantiene abiertos en modo de lectura o escritura, ya séa un streamreader, streamwritter, stringbuilder, o lo que hayas usado en tu code para realizar "X" operación.

Como ya te han dicho... si no muestras el código poco se puede hacer, pero vamos, el problema es ese, un objeto sin cerrar/liberar, pongo la mano en el fuego al 100%, la excepción que comentas lo provoca eso, así que con que le heches un repaso a tu código para añadir los "end using" o en su defecto ".close"/".dispose" debería ser más que suficiente.

Salu2!
#8812
Tienes razón Kubox, yo siempre digo que para trabajar con transparencias hay que usar WPF y para lo del Flickering también, pero tooodo cambia en WPF, se me hace complejo, el hecho de crear un proyecto en WPF, aprender XAML, asimilar el hecho de volver a aprender todo lo que llevo aprendido en WindowsForms para poder "trasladarlo" a la sintaxis y los métodos de WPF... No me motiva nada, más bien me desespera.

Recuerdo una vez, no hace mucho, intenté usar un código de un WF en un WPF, para ello necesitaba un timer, y no hay timer en WPF, sé que puedo buscar el equivalente de un Timer en un WPF, pero es que diréctamente cerré el proyecto y me olvidé, porque para cada cosa voy a tener que ir buscando su equivalente y cambiar cada pequeña cosa, se me queda muy grande WPF.

Gracias por tu consejo Kubox






@Seazoux
Cita de: Seazoux en 31 Mayo 2013, 22:55 PM
Y se puede hacer que vaya imagen por imagen en vez de un Scroll fluido? :silbar:

Usé un timer para el scroll progresivo, perféctamente se puede hacer "imágen por imágen", lo que te permita tu imaginación (verticalscrollbar.value = )xD

Saludos
#8813
Es bastante fácil, mira:

1.Como contenedor usa un panel.

2.Metes dentro los pictureboxes que quieras (preferiblemente añádelos en tiempo de ejecución, porque si tienes que meter 30 o 50 pictureboxes... se te va a quedar pequeña la pantalla para agrandar el panel e ir metiendoles desde el designer xD)

3. Y ya el resto es símplemente usar las scrollbar del panel "Panel1.VerticalScroll." (Aunque no las tengas activas ni estén visibles, puedes usarlas para scrollear).

Puedes capturar la rueda del botón en el evento "Panel1.MouseWheel" de la forma que ya has visto en uno de mis codes,
Y si quieres hacer medio transparente el panel es suficiente con que uses un color ARGB, donde la A es el canal Alpha (transparencia), el valor máximo es 255, si lo pones a 125 pues el panel se verá al 50% de transparencia.

[youtube=640,360]http://www.youtube.com/watch?v=zIBDTMjrDd4&feature=youtu.be[/youtube]
Es una versión barata, te puede dar algunos problemas de Flickering (parpadeos) como se puede apreciar en el vídeo, me gustaría saber evitar los problemas de flickering, pero esto es WindowsForms y creeme que he preguntado a 1.000 expertos y nadie tiene la respuesta xD, es lo que hay.

PD: ¿Esperabas un code?  >:D

Saludos
#8814
Aquí tienes información para un buen rato: http://wiki.ioquake3.org/Mod_Making_101

En el tutorial te recomiendan usar Visual C++ 6.

En VS2012 programas en Visual C# (CSharp), no sé hasta que punto VS2012 tiene soporte con C/C++, solo te informo de ese detalle.

Salu2
#8815
Scripting / Re: Ayuda con un Acceso denegado
31 Mayo 2013, 21:54 PM
No te está dando error, te está informando de que hay "0" errores en total :P, los mismos 0 errores que hay en el código que publicaste tú.

¿Esto te da error de acceso denegado?:
Echo a>"C:\Windows\system32\test.tmp"

...¿Has probado a ejecutar el archivo bat como administrador? (Click derecho > Ejecutar como administrador).
#8816
.NET (C#, VB.NET, ASP) / Re: Mostrar/Ocultar
31 Mayo 2013, 21:50 PM
No creo que Seazoux haya sido engreido y/o arrogante porque de hecho no creo que el sepa solucionar este problema así que poco más que "troll" puede ser xD

...Ahora en serio, aquí los 3 somos principiantes, unos con más tiempo que otros, pero nada más.






@Syntaxerror404
¿Te miraste la propiedad "ShowInTaskbar"?, ¿Es eso lo que buscabas?, sinó... ¿puedes dar más detalles del problema?

Sino es eso entonces me imagino que lo que intentabas decir es que tienes la barra de tareas en modo "esconder automáticamente" y que cuando seleccionas la aplicación en ese momento la barra de tareas se restaura (se vuelve visible), imagino que para eso habrá que usar APIs, aunque se puede hacer mediante una clave de registro (Si en algo soy experto es en customizar Windows), pero eso requiere un reinicio de sesión/PC.

Salu2
#8817
Cita de: Seazoux en 31 Mayo 2013, 20:41 PM
Anda esto me viene bien para mi topic de scroll de imagenes, que casualidad  ;-) :laugh:

Si no fuese por mi  ::)... espero ver mis créditos xD

Me alegro, Saludos.
#8818
.NET (C#, VB.NET, ASP) / Re: Mostrar/Ocultar
31 Mayo 2013, 20:50 PM
Cita de: SyntaxError404 en 31 Mayo 2013, 20:38 PM
Tengo otra duda, al seleccionar un Form automaticamente se muestra la barra de tareas :(

como puedo solucionar este problema ??'

¿Que automáticamente se muestra la barra de taréas, o que automáticamente se muestra el Item de la aplicación en la barra de tareas?

Si es lo segundo entonces una manera de solucionarlo es leyendo el nombre y la descripción de las Propiedades de un Fom... hazlo y pronto sabrás porque te lo dije  :P

Un saludo.
#8819
¿ Alguien sería tán amable de mostrarme un código para crear un Hook de bajo nivel GLOBAL (que funcione FUERA del Form) para manejar los mensajes de windows (En concreto WM_MOUSEWHEEL) ?

Esto he aprendido a hacerlo dentro del Form con la Interface "IMessageFilter", pero cuando lo intento hacer para que funcione fuera del form no hay manera, todo lo que consigo son un par de Fails!,

Me han explicado la manera de hacerlo global, se puede hacer importando la librería user32.dll (La función "SetWindowsHookEx") para crear un low-level hook para interceptar los mensajes de Windows, la teoría la tengo, pero no sé hacerlo, me trabo en el punto de intentar usar la función "SetWindowsHookEx" y crear el sub para interceptar los mensajes (if m.message = &HX then...), todo el código que encuentro es para C++/C#, y para lo poco que encuentro de VBNET, (que además tiene poco que ver con los mensajes que quiero interceptar) ni me entero, bastante dificil.

Lo que necesito es hacer algo como esto:

Pseudo-código:
Código (vbnet) [Seleccionar]
Dim mousewheel_up as boolean
Dim mousewheel_down as boolean

Sub that Overides the windows messages to set the mousewheel booleans

   If mousewheel_up then msgbox("MouseWheel up")
   If mousewheel_down then msgbox("MouseWheel down")

End sub


Pero como ya digo, fuera del form.

Un saludo.
#8820
- Detect mouse wheel direction.

Comprueba en que dirección se movió la rueda del mouse.

Código (vbnet) [Seleccionar]
   Private Sub Form_MouseWheel(ByVal sender As Object, ByVal e As MouseEventArgs) Handles MyBase.MouseWheel

       Select Case Math.Sign(e.Delta)
           Case Is < 0
               MsgBox("MouseWheel Down")
           Case Is > 0
               MsgBox("MouseWheel Up")
       End Select

   End Sub







Comprueba en que dirección se movió la rueda del mouse.
...Lo mismo que antes pero usando los mensajes de Windows:


Código (vbnet) [Seleccionar]
   Public Shared Mouse_Have_Wheel As Boolean = My.Computer.Mouse.WheelExists

   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       Application.AddMessageFilter(New MouseWheelMessageFilter())
   End Sub

   Public Class MouseWheelMessageFilter
       Implements IMessageFilter

       Public Function PreFilterMessage(ByRef m As Message) As Boolean Implements IMessageFilter.PreFilterMessage

           If Mouse_Have_Wheel Then

               If m.Msg = &H20A Then

                   If Form.ActiveForm IsNot Nothing Then

                       Try ' "Try" solves too fast wheeling.

                           Dim delta As Integer = m.WParam.ToInt32() >> 16

                           If delta > 0 Then
                               MsgBox("MouseWheel Up")
                           Else
                               MsgBox("MouseWheel Down")
                           End If

                       Catch : End Try

                   End If

                   Return True
               End If

           End If

           Return False

       End Function

   End Class







Ejemplo de como modificar la fuente de texto actual de un control:

Código (vbnet) [Seleccionar]
Me.Font = New Font("Lucida Console", 16, FontStyle.Regular, GraphicsUnit.Point)