elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Mensajes
Páginas: 1 ... 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 [625] 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 ... 1236
6241  Programación / Scripting / Re: (Ayuda,) Cambiar asociaciones de JPG o PNG con un BAT en: 17 Noviembre 2014, 23:12 pm
Si, es lo que buscas, yo lo he testeado tanto en win7 x64 (en su día) y ahora en Win8.1 x64, en mi caso me ha funcionado.

De todas formas puedes hacerlo de forma manual y automatizar la tarea en un script, no es nada dificil.


Prueba a hacerlo de esta manera:

1) Utiliza el comando ASSOC de windows (no mi Assoc.bat) de esta manera:
Código:
assoc | find /I ".png"

Te saldrá la extensión, y a la derecha la clave de registro asociada, algo así:
Código:
.png=png.irfanview_file

Nota: También puedes ver la clave asociada en el valor por defecto de la clave de la extension:
Código:
HKEY_CLASSES_ROOT\.png


2) Abre el regedit, y ve a la ruta de la clave asociada:
Código:
HKEY_CLASSES_ROOT\{CLAVE ASOCIADA}\Shell\Open\Command

Ejemplo:
Código:
HKEY_CLASSES_ROOT\png.irfanview_file\Shell\Open\Command

Nota: Si la clave ...\Shell\Open\Command no existe, creala.


3) Modifica el valor por defecto de la clave "Command" por la aplicación con la que quieres abrir esa extensión.

Ejemplo:
Código:
"C:\Windows\System32\mspaint.exe" "%1" 


¿Cómo automatizar la tarea?, con un script de registro, por ejemplo:

Código
  1. Windows Registry Editor Version 5.00
  2.  
  3. [HKEY_CLASSES_ROOT\.png]
  4. @="CustomAssociation.png"
  5.  
  6. [HKEY_CLASSES_ROOT\CustomAssociation.png\Shell\Open\Command]
  7. @="\"C:\\Windows\\System32\\mspaint.exe\" \"%1\""
  8.  
  9. [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.png\OpenWithProgids]
  10. "CustomAssociation.png"=hex(0):

O con Batch:
Código
  1. :: Converted with Reg2Bat by Elektro
  2.  
  3. @Echo OFF
  4. REG ADD "HKCR\.png"                                     /V "" /D "CustomAssociation.png"                       /F
  5. REG ADD "HKCR\CustomAssociation.png\Shell\Open\Command" /V "" /D "\"C:\Windows\System32\mspaint.exe\" \"%%1\"" /F
  6. Pause&Exit


Si aun así eso no te sirve, puedes intentar buscar otra solución en Google, u otras herramientas más profesionales y que te permitan automatizar la tarea.


Saludos
6242  Programación / Scripting / Re: (Ayuda,) Cambiar asociaciones de JPG o PNG con un BAT en: 17 Noviembre 2014, 21:38 pm
Asociacion de archivo no encontrada para la extension -a .png

prueba a utilizar el parámetro "-c" en lugar de "-a", para forzar la creación de la asociación.

saludos
6243  Programación / Scripting / Re: (Ayuda,) Cambiar asociaciones de JPG o PNG con un BAT en: 17 Noviembre 2014, 20:16 pm
perdona, pero me he perdido un poco :xD ¿de donde sale ese executable?

Ahora veo que me confundí en mi comentario anterior y escribí la extensión "ASSOC7.exe" en lugar de "ASSOC7.bat", quizás hayas mal interpretado eso, perdon, es la costumbre.

Lo siento, hacia mucho que no lo utilizaba, reectifico y te explico de nuevo:

1) Copias el código en un archivo con extensión ".bat", con codificación ANSI (es la codificación por defecto si creas y guardas el archivo desde el Notepad)
2) Llamas al archivo "ASSOC.bat"
3) Ejecutas el siguiente comando (especificando la ruta completa del programa en el segundo parámetro):
Código:
ASSOC.bat -a ".png" "C:\Windows\System32\mspaint.exe"

Debería salirte algo parecido a esto (dependiendo de varios factores):

Código:
png.irfanview_file="C:\Windows\System32\mspaint.exe" "%1"

CORRECTO

Ahora si, ¿te ha funcionado?

Saludos
6244  Programación / Programación General / Re: [EHN-Dev 2014] - Hilo de discusión / comentarios / dudas en: 17 Noviembre 2014, 20:05 pm
¡Ya ha finalizado el concurso!

Y así han quedado los puestos:


Hot Corners, por Eleкtro, ¡con 11 votos!


Emuleightor, por Christian010, ¡con 5 votos!


Masika, por El Benjo, ¡con 4 votos!

Felicidades a todos los ganadores, gracias a todos por participar en este concurso, y cómo no a los miembros del staff y otros que han hecho posible este concurso un año más...

PD: el-brujo contactará con ustedes para el tema de los envios (los premios), porfavor tengan algo de paciencia.

Saludos!
6245  Programación / Scripting / Re: Tomar variables desde txt usando grupos de palabras en: 17 Noviembre 2014, 17:43 pm
Batch es una herramienta simple, no es un lenguaje capacitado para procesar un String con las condiciones que precisas, se podría hacer, pero habría que invertir bastante tiempo en el desarrollo y elaboración del algoritmo para finálmente obtener un código muy engorroso e ineficiente a diferencia de cómo se podría llevar a cabo en un lenguaje de verdad.

Podrías partir la cadena según la cantidad de espacios entre palabra y palabra, pero dijiste algo de la longitud y no se si será respecto a los espacios, así que de todas formas te sugiero una solución más global, utilizar expresiones regulares (RegEx) ya que supongo que la fecha siempre tendrá el mismo formato: 19xx o 20xx y te puedes servir en eso, aunque para esto debes recurrir a cualquier otro lenguaje que soporte RegEx (VisualBasicScripting, por ejemplo, que está integrado en cualquier Windows, aunque es otro lenguaje simple e igual de inproductivo que Batch).

Esta podría ser una expresión regular que cumpliese con tus espectativas:
Código:
(^\w+)\s+([\w\.\,\;\-\s+]+?)\s+(\d{4})\s+(\w+$)

El interior de cada paréntesis representa un grupo, cada grupo captura una palabra/token de la frase, y hay 4 grupos (4 pares de paréntesis) ya que necesitas capturar 4 tokens.


Regular expression - Wikipedia, the free encyclopedia



Te muestro un ejemplo de utilización de esa expresión regular en VisualBasic.Net, tomatelo como un pseudo-code para implementarlo en el lenguaje que prefieras, ya que la mecánica de RegEx es casi idéntica en el resto de lenguajes (no su utilización, pero si el tema de la sintaxis y los grupos):

Código
  1. Imports System.Text
  2.  
  3. Public Class Form1
  4.  
  5. #Region " Regular expression "
  6.  
  7.    ' La cadena de referencia.
  8.    ReadOnly str As String = "09B321       Alberti Ramirez, Juan    1988    CASADO"
  9.  
  10.    ' Las partes de la expresion regular.
  11.    ReadOnly regExToken1 As String = "^\w+" ' "09B321"
  12.    ReadOnly regExToken2 As String = "[\w\.\,\;\-\s+]+?" ' "Alberti Ramirez, Juan"
  13.    ReadOnly regExToken3 As String = "\d{4}" ' "1988"
  14.    ReadOnly regExToken4 As String = "\w+$" ' "CASADO"
  15.  
  16.    ' La expresión regular completa.
  17.    ' (^\w+)\s+([\w\.\,\;\-\s+]+?)\s+(\d{4})\s+(\w+$)
  18.    ReadOnly fullEx = String.Format("({0})\s+({1})\s+({2})\s+({3})",
  19.                                    regExToken1, regExToken2, regExToken3, regExToken4)
  20.  
  21.    ' La instancia del motor RegEx.
  22.    ReadOnly regEx As New RegularExpressions.Regex(fullEx, RegularExpressions.RegexOptions.Singleline)
  23.  
  24.    ' Las capturas de cada token/grupo de la expresión regular.
  25.    ReadOnly regExGroup1 As RegularExpressions.Group = regEx.Match(str).Groups(1)
  26.    ReadOnly regExGroup2 As RegularExpressions.Group = regEx.Match(str).Groups(2)
  27.    ReadOnly regExGroup3 As RegularExpressions.Group = regEx.Match(str).Groups(3)
  28.    ReadOnly regExGroup4 As RegularExpressions.Group = regEx.Match(str).Groups(4)
  29.  
  30. #End Region
  31.  
  32.    Private Shadows Sub Load() Handles MyBase.Load
  33.  
  34.        Dim sb As New StringBuilder
  35.        With sb
  36.            .AppendLine(String.Format("Token 1: '{0}'", regExGroup1.Value))
  37.            .AppendLine(String.Format("Token 2: '{0}'", regExGroup2.Value))
  38.            .AppendLine(String.Format("Token 3: '{0}'", regExGroup3.Value))
  39.            .AppendLine(String.Format("Token 4: '{0}'", regExGroup4.Value))
  40.        End With
  41.  
  42.        MessageBox.Show(sb.ToString, "Capturas RegEx", MessageBoxButtons.OK, MessageBoxIcon.Information)
  43.  
  44.    End Sub
  45.  
  46. End Class




Saludos.
6246  Programación / Scripting / Re: (Ayuda,) Cambiar asociaciones de JPG o PNG con un BAT en: 17 Noviembre 2014, 16:36 pm
¿Por qué la necesidad de utilizar un Script?

Puedes cambiar la asociación de cualquier archivo mediante Windows:
Click derecho > Abrir con... > Elegir programa predeterminado

¿No te sirve eso para llevar a cabo tu propósito?, no se si te entendí bien pero no creo que vayas a querer establecer el programa predeterminado 300 veces al día...

De todas formas si sigues queriendo una herramienta para automatizar la tarea, puedes probar este Script que desarrollé hace años:
[Batch] (APORTE) ASSOC7 (Crea, Asocia, Y desasocia tipos de archivos)

1) Realiza un backup completo del registro.
2) Utiliza el siguiente comando:
Código
  1. ASSOC7.exe -a ".png" "mspaint.exe"

Saludos
6247  Foros Generales / Foro Libre / Re: Sobre las pirámides egipcias en: 16 Noviembre 2014, 22:30 pm
documentándome acerca de los detalles arquitectónicos de las pirámides he quedado sorprendido con algunos detalles sobre la precisión y error mínimo de la colocación de las piedras, así como los largos y kilométricos pasadizos que alberga en su interior, además del corto plazo de construción y las herramientas y materiales empleados para la misma.

No he visto el video, pero he visto decenas de documentales (algunos más fiables que otros) que hablan y documentan practicamente lo mismo, las asombromsas incongluencias tecnológicas de los egipcios, las mediciones exactas y (casi) perfectas que a cualquier arquitecto le resultarían su mayor reto en la vida, una auténtica pesadilla de "copiar".

Sólo puede haber una respuesta a estas incógnitas:
1) Estamos muy equivocados respecto a los conocimientos que adquirieron los arquitectos egipcios por si mismos, los hemos subestimado.
2) Los alienígenas nos enseñaron cómo construir edificaciones para nuestro desarrollo en La tierra, para nuestra evolución como seres humanos, ¿por qué no?.





De hecho no se si sabras que lo egipcios inventaron la electricidad



@Senior++
Con todo mi respeto, ya sabes que yo apoyo la teoría de los alienígenas ancestrales, pero no de la forma en la que nos lo cuenta el señor Erich von Däniken ("autor" de la teoría) o como la cuenta la serie-documental de Ancient Aliens que está totalmente basada en las pamplinas de Erich von Däniken, este individuo solo cuenta mentiras para enriquecer las bases de su teoría y llenar su bolsillo, literalmente.

Esa imagen egipcia que muestras es un cuento, lo diré de otra manera: ¡ESO NO ES UNA BOMBILLA GIGANTE! y lo del interior no es el "filamento" de una bombilla, se trata de una simple serpiente y lo que lo rodea es una superficie que representa otras cosas... una flor de loto de la que brota una burbuja de "vida" de donde sale el primer Dios egipcio, Atum, representado en forma de serpiente, es una representación de la vida y de los dioses como cualquier otra representación egipcia, realmente no es nada fuera de lo normal en esta cultura, se está utilizando el mismo simbolismo egipcio.

Yo a pesar de ser bastante crédulo con este tipo de teorías siempre he intentado contrastar la información que me dan con otras fuentes de opiniones expertas e imparciales (egiptologos, arquitectos, textos antiguos, debunkers, en fin lo que se encuentre por internet), y te puedo asegurar que el 99% o el 100% de todo lo relacionado con la serie Ancient Aliens y con el libro de Erich von Däniken es una farsa, todo está manipulado de forma exagerada, y utilizando argumentos del hombre de paja, la mitad de palabras sacadas de textos antiguos se las inventan para enriquecer falsos argumentos (y esto se puede comparar con las transcripciones reales de textos antiguos).

Hay una verdad muy oculta y muy grande relacionada con los alienígenas y con las civilizaciones antiguas, pero no hay que confiar en todo lo que veamos en la TV.

Me gustaría que te tomases unos minutos para ver este video subtitulado al Castellano, a partir del minuto 4:00 lo comprenderás todo a la perfección:

Refutando "astronautas ancestrales": parte 10 Focos electricos Egipcios


Saludos!
6248  Programación / Scripting / Re: Redirigir el resultado de un comando a una variable ¿Se puede? ¿Cómo? [BATCH] en: 16 Noviembre 2014, 22:10 pm
al hacer la segunda solicita detallar dónde y con qué nombre va a ir el archivo ¿Verdad? Bueno, pues he ingresado C:\prueba1.txt y en C: no quedó ningún .txt con esa información. Lo más probable es que yo no esté entendiendo el código

Lo que ocurre es que en el bloque de la opción [2] pido el nombre del archivo, no pido la ruta completa ni tampoco la extensión, el archivo se guarda con el nombre especificado en el directorio de trabajo actual.

El código que escribí es un sólo ejemplo para orientarte y está abierto a modificaciones para adaptarlo a tus necesidades.





se ingresa a la primer opción y luego cuando ingreso a la segunda, entra nuevamente por la primera.

El problema, obviamente, está aquí:
Citar
Código
  1. if (%o%==1) goto :uno else (if (%o%==2) (goto :if2) else (if (%o%==3) (goto :if3) else (if (%o%==4) (goto :cuatro) else (goto :error))))

Estás intentando simular un 'ElseIf', pero esta es otra característica que no está soportada en Batch (aunque por otro lado si que soporta un 'And', pero de forma invisible).
No es necesario que anides los ifs para conseguirlo.

¿Qué hago?

Tienes tres opciones:

1) usar múltiples If:
Código
  1. If "%o%" EQU "1" (Goto :uno)
  2. If "%o%" EQU "2" (Goto :dos)
  3. etc...

2) Usar el comando Choice como ya mostré.

3) Omitir el uso de If y llamar al método deseado de forma dinámica:

Código
  1. @echo off
  2.  
  3. :menu
  4. cls
  5. echo 1) listar archivos segun su criterio
  6. echo 2) la busqueda anterior se almacena en un archivo
  7. set /p "o= Elija su opcion:"
  8. Call :%o%
  9. Goto :Menu
  10.  
  11. :1
  12. Echo Soy el método 1
  13. goto :EOF
  14.  
  15. :2
  16. Echo Soy el método 2
  17. goto :EOF


saludos
6249  Programación / Scripting / Re: Redirigir el resultado de un comando a una variable ¿Se puede? ¿Cómo? [BATCH] en: 16 Noviembre 2014, 17:15 pm
Buenas!

Citar
La primera es listar archivos según un criterio ingresado por el usuario

Citar
el problema está en la primer opción, ¿cómo hago para que éste resultado se almacene en una variable? ¿Se puede?

1) Te están pidiendo que listes archivos, no que almacenes el resultado de la búsqueda en una variable,
    sé que intentas ser eficiente pero en Batch no puedes serlo, así que mi consejo es que no hagas más de lo necesario, es decir, aquello que te piden que hagas.

2) Lamentablemente Batch no llega ni a poder calificarse como "lenguaje de programación", y las variables multi-linea no es una característica soportada (de forma natural) en Batch.
    Para crear una variable multilinea debes recurrir a un pequeño Hack, algo que te resultaría bastante engorroso en la situación que te encuentras (Dir + For /F + MultiLine Hack):
Código
  1. @Echo OFF & SetLocal EnableDelayedExpansion
  2.  
  3. :: New Line Hack Start
  4. set NewLine=^
  5.  
  6.  
  7. :: New Line Hack End
  8.  
  9. set "MultiLine=Line1!NewLine!Line2"
  10. set "MultiLine=!MultiLine!!NewLine!Line3"
  11.  
  12. Echo !MultiLine!
  13.  
  14. Pause&Exit

3) Consejo: Utiliza la programación en Inglés, el desarrollo en Castellano, además de feo, no es nada productivo.

Ejemplo:
Código
  1. @Echo OFF
  2.  
  3. :Menu
  4. Echo [1] Perform a file search in drive '%~d0\'.
  5. Echo [2] Write the search result of option [1] to file.
  6. Echo [3] *********
  7. Echo [4] Terminate
  8. Choice.exe /C "1234" /M "Choose an option: "@Echo OFF & SetLocal EnableDelayedExpansion
  9. Cls
  10. Call :Option%ErrorLevel%
  11. Cls
  12. Goto :Menu
  13.  
  14. :Option1 :: Perform file search by pattern.
  15. Set /P "SearchPattern.Filename=Write a partial filename: "
  16. Set /P "SearchPattern.Extension=Write a file extension (or keep it empty for any extension): "
  17.  
  18. Set "SearchPattern.Drive=%~d0"
  19. Set "SearchPattern.Filename=*%SearchPattern.Filename%*"  & :: Fix empty file name.
  20. Set "SearchPattern.Extension=%SearchPattern.Extension%*" & :: Fix empty file extension.
  21.  
  22. (
  23. Dir /A-D /B /S "%SearchPattern.Drive%\%SearchPattern.Filename%.%SearchPattern.Extension%"
  24. )>"%Temp%\SearchResult.tmp"
  25.  
  26. Type "%Temp%\SearchResult.tmp" | MORE
  27. Goto :EOF
  28.  
  29. :Option2 :: Save result to file.
  30. If Not Exist "%Temp%\SearchResult.tmp" (
  31. Echo There is any previous search result to save.
  32. ) Else (
  33. Set /P "FileName=Set the destination filename: "
  34. Call Move /Y "%Temp%\SearchResult.tmp" "%CD%\%%FileName%%.txt"
  35. )
  36. Goto :EOF
  37.  
  38. :Option3
  39. :: Do Something.
  40. Goto :EOF
  41.  
  42. :Option4

Saludos
6250  Programación / .NET (C#, VB.NET, ASP) / Re: Manejo de Picturebox con un Timer en C# en: 16 Noviembre 2014, 14:05 pm
Había pensado en un arreglo pero nunca hice uno con imágenes y no sé cómo.

Un Array/Colección se puede crear de la misma manera para cualquier tipo de objeto, no tiene mucho misterio solo tienes que asignarle objetos de tipo Bitmap o Image cómo lo harías con enteros para un Array de Integer, por ejemplo.

Si las images no superan los 256x256 de resolución entonces te recomiendo utilizar un ImageList, de lo contrario podrías utilizar una colección genérica de tipo List(<T> Image).

Para el tema de volver a la primera imagen (es decir, el primer elemento de la colección) puedes llevar la cuenta del índice actual en una variable "contador", o bien puedes utilizar los métodos de búsqueda de la lista.

Ejemplo:

VB.Net:
Código
  1. Public Class Form1
  2.  
  3.    ' instancio unas imagenes por defecto para este ejemplo...
  4.    Private ReadOnly img1 As Image = Image.FromFile("D:\Customización\Wallpapers\_Favoritos\001.jpg")
  5.    Private ReadOnly img2 As Image = Image.FromFile("D:\Customización\Wallpapers\_Favoritos\002.jpg")
  6.    Private ReadOnly img3 As Image = Image.FromFile("D:\Customización\Wallpapers\_Favoritos\003.jpg")
  7.    Private ReadOnly img4 As Image = Image.FromFile("D:\Customización\Wallpapers\_Favoritos\004.jpg")
  8.    Private ReadOnly img5 As Image = Image.FromFile("D:\Customización\Wallpapers\_Favoritos\005.jpg")
  9.  
  10.    Private WithEvents imgListPhotos As New List(Of Image) From {img1, img2, img3, img4, img5}
  11.    Private WithEvents pcbPhotos As New PictureBox
  12.    Private WithEvents timerPhotos As New Timer
  13.  
  14.    Private imgInterval As Integer = 2000I
  15.  
  16.    ''' <summary>
  17.    ''' Initializes a new instance of the <see cref="Form1"/> class.
  18.    ''' </summary>
  19.    Public Sub New()
  20.  
  21.        ' This call is required by the designer.
  22.        InitializeComponent()
  23.  
  24.        ' Add any initialization after the InitializeComponent() call.
  25.        Me.Controls.Add(Me.pcbPhotos)
  26.  
  27.        With Me.pcbPhotos
  28.            .Dock = DockStyle.Fill
  29.            .BackgroundImageLayout = ImageLayout.Stretch
  30.        End With
  31.  
  32.        With Me.timerPhotos
  33.            .Interval = Me.imgInterval
  34.            .Enabled = True
  35.            .Start()
  36.        End With
  37.  
  38.    End Sub
  39.  
  40.    ''' <summary>
  41.    ''' Handles the Tick event of the timerPhotos control.
  42.    ''' </summary>
  43.    ''' <param name="sender">The source of the event.</param>
  44.    ''' <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
  45.    Private Sub TimerPhotos_Tick(ByVal sender As Object, ByVal e As EventArgs) _
  46.    Handles timerPhotos.Tick
  47.  
  48.        With Me.pcbPhotos
  49.  
  50.            If .BackgroundImage Is Nothing Then
  51.                .BackgroundImage = Me.imgListPhotos.First
  52.  
  53.            Else
  54.                Dim imgIndex As Integer =
  55.                    Me.imgListPhotos.FindIndex(Function(img As Image) img.Equals(.BackgroundImage)) _
  56.                    + 1I
  57.  
  58.                If imgIndex = Me.imgListPhotos.Count Then ' RollBack
  59.                    imgIndex = 0I
  60.                End If
  61.  
  62.                .BackgroundImage = Me.imgListPhotos(imgIndex)
  63.  
  64.            End If ' currentImg Is Nothing
  65.  
  66.        End With ' Me.pcbPhotos
  67.  
  68.    End Sub
  69.  
  70. End Class

C# (conversión online):
Código
  1. using Microsoft.VisualBasic;
  2. using System;
  3. using System.Collections;
  4. using System.Collections.Generic;
  5. using System.Data;
  6. using System.Diagnostics;
  7. public class Form1
  8. {
  9.  
  10. // instancio unas imagenes por defecto para este ejemplo...
  11. private readonly Image img1 = Image.FromFile("D:\\Customización\\Wallpapers\\_Favoritos\\001.jpg");
  12. private readonly Image img2 = Image.FromFile("D:\\Customización\\Wallpapers\\_Favoritos\\002.jpg");
  13. private readonly Image img3 = Image.FromFile("D:\\Customización\\Wallpapers\\_Favoritos\\003.jpg");
  14. private readonly Image img4 = Image.FromFile("D:\\Customización\\Wallpapers\\_Favoritos\\004.jpg");
  15. private readonly Image img5 = Image.FromFile("D:\\Customización\\Wallpapers\\_Favoritos\\005.jpg");
  16.  
  17. private List<Image> imgListPhotos = new List<Image> {
  18. img1,
  19. img2,
  20. img3,
  21. img4,
  22. img5
  23. };
  24.  
  25. private PictureBox pcbPhotos = new PictureBox();
  26. private Timer withEventsField_timerPhotos = new Timer();
  27. private Timer timerPhotos {
  28. get { return withEventsField_timerPhotos; }
  29. set {
  30. if (withEventsField_timerPhotos != null) {
  31. withEventsField_timerPhotos.Tick -= TimerPhotos_Tick;
  32. }
  33. withEventsField_timerPhotos = value;
  34. if (withEventsField_timerPhotos != null) {
  35. withEventsField_timerPhotos.Tick += TimerPhotos_Tick;
  36. }
  37. }
  38.  
  39. }
  40.  
  41. private int imgInterval = 2000;
  42.  
  43. /// <summary>
  44. /// Initializes a new instance of the <see cref="Form1"/> class.
  45. /// </summary>
  46. public Form1()
  47. {
  48. // This call is required by the designer.
  49. InitializeComponent();
  50.  
  51. // Add any initialization after the InitializeComponent() call.
  52. this.Controls.Add(this.pcbPhotos);
  53.  
  54. this.pcbPhotos.Dock = DockStyle.Fill;
  55. this.pcbPhotos.BackgroundImageLayout = ImageLayout.Stretch;
  56.  
  57. this.timerPhotos.Interval = this.imgInterval;
  58. this.timerPhotos.Enabled = true;
  59. this.timerPhotos.Start();
  60.  
  61. }
  62.  
  63. /// <summary>
  64. /// Handles the Tick event of the timerPhotos control.
  65. /// </summary>
  66. /// <param name="sender">The source of the event.</param>
  67. /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
  68. private void TimerPhotos_Tick(object sender, EventArgs e)
  69. {
  70.  
  71. if (this.pcbPhotos.BackgroundImage == null) {
  72. this.pcbPhotos.BackgroundImage = this.imgListPhotos.First;
  73.  
  74. } else {
  75. int imgIndex = this.imgListPhotos.FindIndex((Image img) => img.Equals(this.pcbPhotos.BackgroundImage)) + 1;
  76.  
  77. // RollBack
  78. if (imgIndex == this.imgListPhotos.Count) {
  79. imgIndex = 0;
  80. }
  81.  
  82. this.pcbPhotos.BackgroundImage = this.imgListPhotos(imgIndex);
  83.  
  84. }
  85.  
  86. }
  87.  
  88. }
  89.  
  90. //=======================================================
  91. //Service provided by Telerik (www.telerik.com)
  92. //Conversion powered by NRefactory.
  93. //=======================================================

Saludos
Páginas: 1 ... 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 [625] 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 ... 1236
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines