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

#1461
Cita de: crazykenny en  8 Diciembre 2017, 10:07 AMY, bueno, esto ultimo lo comento para preguntar hasta que punto podría ser viable (en cuanto a participacion me refiero) el, bueno, volver a organizar estas actividades, o incluso otras nuevas.

Viabilidad practicamente nula, debido a que en esta era los foros se mueren cada día un poco más de forma inevitable y sulfurante...

Si se vuelve a programar algún concurso o actividad similar (quizás si, o quizás no) será por amor a la informática más que por otra cosa, por que ya sabemos todos (no me refiero al staff, que también, sino a todo el mundo en general) que expectativas de participación se puede esperar.

Saludos!
#1462
El código que has puesto tiene varios fallos de diseño:

1. El usuario puede insertar caracteres considerados como letras en la categoría Unicode, pero que no son letras como tal, como por ejemplo los símbolos "º" y "ª" (primero, primera) del Español. Aparte hay que tener en cuenta que también se puede insertar cualquier caracter considerado letra de cualquier abecedario aparte del abecedario Inglés y Español, como por ejemplo el Árabe (ej. "غ" y "ظ").

2. El usuario puede usar la combinación de teclas 'CTRL+V' para insertar cualquier otro tipo de caracter.

3. El usuario puede usar el menú contextual del control (opción "Pegar") para insertar cualquier otro tipo de caracter.




A menos que realmente quieras permitir el uso de símbolos como las que mencioné, y de letras de otras culturas (ej. Árabe), yo te sugiero que declares una variable con los caracteres que realmente quieres permitir, y arregles los otros fallos de diseño que mencioné. El resultado podría ser el siguiente:

Código (vbnet) [Seleccionar]
Private ReadOnly allowedChars As Char() =
   "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZçñÇÑ ".ToCharArray()

''' <summary>
''' Handles the <see cref="TextBox.MouseEnter"/> event of the <see cref="TextBox1"/> control.
''' </summary>
''' <param name="sender">
''' The source of the event.
''' </param>
''' <param name="e">
''' The <see cref="EventArgs"/> instance containing the event data.
''' </param>
Private Sub TextBox_MouseEnter(ByVal sender As Object, ByVal e As EventArgs) Handles TextBox1.MouseEnter

   Dim tb As TextBox = DirectCast(sender, TextBox)

   ' Disable default contextmenu by creating a new empty one.
   If (tb.ContextMenuStrip Is Nothing) Then
       tb.ContextMenuStrip = New ContextMenuStrip()
   End If

End Sub

''' <summary>
''' Handles the <see cref="TextBox.KeyPress"/> event of the <see cref="TextBox1"/> control.
''' </summary>
''' <param name="sender">
''' The source of the event.
''' </param>
''' <param name="e">
''' The <see cref="KeyPressEventArgs"/> instance containing the event data.
''' </param>
Private Sub TextBox1_KeyPress(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles TextBox1.KeyPress

   Select Case e.KeyChar

       Case Convert.ToChar(Keys.Enter)
           ' Invoke associated action when the user press Enter key.
            ' eg. Button1.PerformClick()

       Case Convert.ToChar(Keys.Back)
           ' Allow backspace to delete characters.
           e.Handled = False

       Case Convert.ToChar(Keys.Capital Or Keys.RButton) ' CTRL+V.
           ' Allow paste from clipboard if the content does not contain illegal characters.
           e.Handled = Not Clipboard.GetText().All(Function(c As Char) Me.allowedChars.Contains(c))

       Case Else
           If Char.IsControl(e.KeyChar) Then
               ' Allow Cut (CTRL+X), Copy (CTRL+C), Undo (CTRL+Z) and Redo (CTRL+Y).
               e.Handled = False

           Else
               ' Allow only allowed characters.
               e.Handled = Not Me.allowedChars.Contains(e.KeyChar)

           End If

   End Select

End Sub





Cita de: _CrisiS_ en  7 Diciembre 2017, 23:38 PM
el cual lo estoy usando en 3 textboxt 2 almenos , el problema esta que me funciona en el primero pero al querer escribir en alguno de los otros 3 textboxt automaticamente se escrie en el primer textboxt a que se debe esto :C

Recuerda que la sentencia Handles de VB.NET nos permite suscribir un mismo controlador de eventos a varios eventos/controles a usando la siguiente sintaxis:
Código (vbnet) [Seleccionar]
Private Sub TextBox_KeyPress(ByVal sender As Object, ByVal e As KeyPressEventArgs) Handles TextBox1.KeyPress, TextBox2.KeyPress, TextBox3.KeyPress
   ' ...
End Sub


El método TextBox_KeyPress estaría suscrito al evento TextBox.KeyPress de los controles: TextBox1, TextBox2 y TextBox3. Esto quiere decir que no necesitas declarar 3 controladores de eventos diferentes para copiar el mismo código 3 veces en cada uno de ellos...

Saludos.
#1463
Foro Libre / Re: Nube radioactiva sobre Europa
7 Diciembre 2017, 11:15 AM
Cita de: Orubatosu en  7 Diciembre 2017, 09:20 AM¿Lo dices porque Rusia no es intervencionista, racista, homofoba y bombardea habitualmente a poblaciones civiles alegremente?

#1464
El tipo de conversión automatizada que buscas es casi imposible, menos si buscas que sea gratuito, y muchísimo menos si esperas que tenga soporte para varios lenguajes y que además genere un formato de pseudocódigo que se parezca al que has puesto de ejemplo... puesto que no existe un estándar a seguir en el diseño de pseudocódigo (aunque algunas entidades intenten imponer sus propias guías de diseño, como Microsoft).

Sin embargo, hay otro tipo de programas comerciales que te pueden ayudar a aumentar tu productividad para la generación de pseudocódigo:

Enfocado a C/C++, C# y VB.NET con integración en Visual Studio:



Enfocado a C/C++, C#, Delphi, Java, javascript y otros lenguajes a diagramas de flujo:



Enfocado a "pseudocódigo" con sintaxis C-like a diagramas de flujo:



Y recuerda que siempre puedes optar por generar tus propios diagramas de flujo (UML) del código fuente en Visual Studio:




Saludos
#1465
Mediante programación, desarrollando un script o programa que configure el server de correo y envie los e-mails. Si no dominas un lenguaje de programación, entonces puedes buscar en Google cualquier software de tipo "bulk mail" o "mail bomber", los hay a patadas, tanto gratuitos como comerciales.

Saludos
#1466
Cita de: rigorvzla en  5 Diciembre 2017, 11:27 AMNadie sabe? acudo a personas porque se que los libros no me diran algo consiso y preciso respecto a esto.

Hay que tener en cuenta que estás formulando una pregunta muy específica con poco margen de aplicación en escenarios del mundo real. Dicho de otro modo: muy pocos programadores (relativamente hablando, de todos los que hay) habrán tenido la necesidad o la curiosidad de experimentar con el método GrammarBuilder.AppendDictation(), y sería toda una suerte si en una comunidad Hispana consigues ayuda e información de utilidad. Para este tipo de preguntas te sugiero que acudas a la comunidad de stackoverflow.com, allí seguro encontrarás gente experta en el tema.

Saludos.
#1467
El problema parece ser evidente, parece ser un problema de lozalización/cultura del separador de decimales, debido a que la función SqliteDataReader.GetDouble() no es capaz de interpretar el separador de decimales coma (,) como un separador válido, y entonces genera una excepción por ese motivo... por que determina que el formato de la expresión no es válido al encontrar una coma en el string, en lugar de un punto.

Practicamente no domino nada el manejo con SQL, así que probablemente habrá una mejor solución (más directa) para esto, como por ejemplo podría ser que buscases el modo de formatear correctamente el separador de decimales al momento de generar la entrada en la tabla, pero me atrevería a decir que este otro tipo de solución podría funcionarte igual:

Código (csharp) [Seleccionar]
// ...
string str = dr.GetString(0);
double value;

if (str.Contains(",")) {
   double.TryParse(str, NumberStyles.Float, CultureInfo.GetCultureInfo("es-ES"), out value);

} else if (str.Contains(".")) {
   double.TryParse(str, NumberStyles.Float, CultureInfo.GetCultureInfo("en-US"), out value);

} else {
   double.TryParse(str, NumberStyles.Float, CultureInfo.InvariantCulture, out value);

}

if (value != 0) {
   Horas = value;

} else {
   throw new InvalidCastException();

}
// ...


Saludos.
#1468
Software / Re: Problema con Virtualbox
7 Diciembre 2017, 01:38 AM
Cita de: piero_11 en 16 Noviembre 2017, 15:35 PMTengo una imagen Iso del disco duro c:/ de un portatil el cual tiene Windows xp instalado. Quiero arrancarlo en virtualbox pero no se como hacerlo.

Es decir, la ISO no contiene el CD de Windows XP, sino que más bien contiene todo el sistema de archivos de la unidad C:\, ¿es eso lo que dices?. En ese caso lo que debiste crear no es una ISO, sino una imagen de disco virtual (ej. VHD).

Puedes usar cualquier software para ello, como por ejemplo Disk2Vhd de SysInternals:

Una vez hayas creado la imagen de disco virtual VHD con el contenido de la unidad C:\, podrás importar ese disco virtual a VirtualBox (si no sabes como, puedes buscar cualquier tutorial en Google, es algo sencillo de realizar).

PD: no caigas en el error de intentar extraer el contenido de esa ISO en un disco duro formateado/vacío para crear una imagen VHD a partir de esos archivos extraidos en el disco duro, por que el sistema operativo no será bootable. Lo que debes hacer es crear la imagen VHD a partir del contenido original de la unidad C:\.

Saludos.
#1469
CitarEs posible hacer un script para que pulse 3 teclas a la vez?

Si, por supuesto, puedes registrar en el sistema operativo una combinación global de teclas de acceso directo que consista en 3 teclas: un modificador de tecla (ALT, CONTROL, SHIFT, WINDOWS o {NINGUNO}) y una combinación de dos teclas virtuales.

Cita de: unknown1111 en  5 Diciembre 2017, 12:23 PMMi finalidad con esto es crear un .Bat

En una herramienta tan simple, básica y limitada como Batch no puedes... ni de lejos. En otro lenguaje capacitado, sí, aunque hasta donde yo sé no es posible asignar la tecla CONTROL derecho como modificador de tecla, sino ambas teclas CONTROL al mismo tiempo (izquierda o derecha) como se especifica en la documentación de la función RegisterHotKey:


Para registrar (de forma temporal, durante la ejecución de tu programa/script) una combinación global de teclas de acceso directo, tienes que llamar a dicha función de Windows, RegisterHotKey, pasándole como primer argumento el modificador de tecla CONTROL (MOD_CONTROL) u otro modificador de tecla de los que están disponibles, y como segundo argumento le pasarías una tecla o una combinación de teclas virtuales que desees, en este caso la tecla "Function / Fn", y "F12" (VK_F12).

No dispongo de un teclado con la tecla "Fn", así que no puedo testearlo, probar y comprobar, pero en teoría creo que deberías poder usar la función MapVirtualKey / MapVirtualKeyEx para ello, aunque no estoy muy seguro sin probarlo primero... te dejo por aquí la documentación:





En resumen, lo que deberías hacer es buscar un lenguaje de verdad (no Batch, que ni es lenguaje ni es nada) que te permita realizar llamadas de invocación de plataforma a la función RegisterHotKey de la API de Windows (yo te recomendaría C# o VB.NET, pero "cualquier" otro lenguaje sirve).

También puedes usar cualquier otro lenguaje de alto nivel de abstracción con wrappers de esa función de Windows para facilitarte la tarea y la comprensión si no tienes un suficiente nivel de aprendizaje y comprensión con la programación, como por ejemplo podría ser el lenguaje de scripting AutoIt, el cual fue diseñado para automatizar con sencillez este tipo de escenarios enfocados al uso del teclado y el mouse:


Saludos.