• Jueves 2 de Mayo de 2024, 00:26

Mostrar Mensajes

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


Mensajes - pedro00pedro

Páginas: [1]
1
Otros CLR / Re: Usar valor de String
« en: Martes 18 de Enero de 2011, 17:43 »
Cita de: "LapizTolita"
Cita de: "pedro00pedro"
Cita de: "LapizTolita"
Primero ¿Por qué en vez de ese Do While no pones un for?
Segundo te conviene tener un arreglo de texbox asi podes hacer SendKeys::SendWait(MiTextBoxArray.Text);
En cuanto a lo primero: ¿Que diferencia hay como para que merezca la pena cambiarlo?
Lo segundo. no se como se hace eso, aun estoy aprendiendo. ¿ Podrías explicar brevemente como hacerlo?

No hay mucha diferencia para la maquina es cuestión de que tu código quede mas legible, es más cómodo tener un for(int i=0;i<n;++i) y después todo el resto del código a tener desparramadas todas las sentencias de control por ahí.

Respecto a lo segundo, te explico no todo en la vida es arrastrar textbox hay que manejar mas el código.
Declará un arreglo de textbox como lo harías con cualquier otro tipo.
Inicializalos y después le cambias las propiedades y sus respectivas ubicaciones entre otras propiedades que te parezca necesario configurar.

Otra cosa te conviene llamar las variables con nombre mas demostrativos.
Por ejemplo: repeticiones_Textbox


Cita de: "pedro00pedro"
Cita de: "ivancp"
No me agrada la sintaxis del codigo C++ de .NET  (opinion muy personal offtopic para este post)
No se, yo solo he programado en VB.NET y C++.Net, es lo que se y estoy empezando, así que de momento no me preocupo por eso.

No te preocupes el quería robar post nada más.
Y si es resulta bastante incomodo ver C++ así, pero es cuestión de costumbre

Lo primero lo tomaré como consejo para programas futuros, pero como tú bien dices es cuestión de orden, pero una vez hecho, ¿Para que cambiarlo ya? Quizá sea peor y fastidie algo, mejor lo dejo como esta, ya que como dices no hay gran diferencia en cuanto al funcionamiento en si. Pero definitivamente creo que a partir de ahora es lo que usaré.

En cuanto a lo segundo, creo que no entendiste, no se siquiera lo que es un arreglo ni como definirlo ni usarlo. Por suerte leyendo por internet he "conseguido" hacerlo funcionar, y si, creo que es lo que estaba buscando, o por lo menos hace lo que quería, y ya de paso he aprendido que son y para que sirven, y creo que esta información me será muy útil en el futuro.
Y ni que decir tiene que he conseguido reducir mi código a 200 lineas menos, en comparación con la "chapuza" que tenia hecha, en la que tenia unos if y elses para cada textbox, si había texto realizaba lo que querías, y sino, no, mucho mas lioso y largo, y ya de paso, extremadamente ineficiente.

En cuanto a lo de nombrar las variables, lo se, y cuando hago un programa me lo pienso bien antes de nombrarlas, pero como en este tenia solo una cuantas creí que con ese nombre sobraría, tampoco quiero escribir Hipopotomonstrosesquipedaliofobia cada vez que quiero utilizarlas, no es que lo tenga, pero tampoco es plan de pasarse.
Ademas, suelo comentarlas, esos comentarios no los he puesto para vosotros, ya estaban. Yo suelo comentar mi código al menos minimamente por si acaso.

En cuanto a lo ultimo, es que es así de simple, a mi me resulta raro ver otro código que no sea alguno de los que he manejado/manejo/he visto bastante. Cuestión de costumbres.

2
Otros CLR / Re: Usar valor de String
« en: Lunes 17 de Enero de 2011, 20:46 »
Cita de: "LapizTolita"
Primero ¿Por qué en vez de ese Do While no pones un for?
Segundo te conviene tener un arreglo de texbox asi podes hacer SendKeys::SendWait(MiTextBoxArray.Text);
En cuanto a lo primero: ¿Que diferencia hay como para que merezca la pena cambiarlo?
Lo segundo. no se como se hace eso, aun estoy aprendiendo. ¿ Podrías explicar brevemente como hacerlo?

Cita de: "ivancp"
No me agrada la sintaxis del codigo C++ de .NET  (opinion muy personal offtopic para este post)
No se, yo solo he programado en VB.NET y C++.Net, es lo que se y estoy empezando, así que de momento no me preocupo por eso.

3
Visual C++ / Re: ¿Cúal es el codigo para abrir un archivo, .exe?
« en: Jueves 13 de Enero de 2011, 21:24 »
No te recomiendo lo que dicec m0skit0, esta bien y funciona, pero muestra la fea ventana de cmd, usa mejor:
Código: C++
  1. Process::Start("archivo.exe");
  2.  
Esto abrirá el proceso de forma limpia.
Yo lo he usado en varios proyectos, y tengo estas librerias incluidas, que creo que hacen falta.
Código: C++
  1. #include <shellapi.h>
  2. #using <System.dll>
  3.  
De todas formas busca en Google mas información sobre Process::Start para saber que necesitas exactamente y que argumentos puedes pasarle.

4
Otros CLR / Usar valor de String
« en: Jueves 13 de Enero de 2011, 21:20 »
El problema es que quiero que el valor en |||    SendKeys::SendWait(act4);     |||| sea dinámico dependiendo del valor de otra string (act4), que es el nombre de otrras string que es la que quiero que se muestre. Tengo varias strings (text1, text2, text3...) que tienen almacenado texto, y quiero que se muestren una por una, y para ello tenia un loop en el que act4 va cambiando empezando siendo text1 y acabando siendo text30. Pero el problema está en que SendKeys::SendWait(act4); no muestra el valor de text1, el de text2, etc, sino que muestra el nombre, tal cual, "text1", "text2", etc, y yo no quiero eso.

Aqui os pongo el codigo para que veais mejor a que me refiero, y a ver si me podeis decir como solucionarlo.
Código: C++
  1. String^ text = Convert::ToString(textBox1->Text);
  2.         String^ text2 = Convert::ToString(textBox4->Text);
  3.         String^ text3 = Convert::ToString(textBox5->Text);
  4.         [...]
  5.         String^ text30 = Convert::ToString(textBox33->Text);
  6.  
  7.         int rep;  //numero de repeticiones de envio de mensajes
  8.             if (textBox2->Text == "")
  9.                 rep = 1;
  10.             else
  11.                 rep = Convert::ToInt32(textBox2->Text);
  12.         int seg; //numero de segundos entre envios
  13.             if (textBox3->Text == "")
  14.                 seg = 0;
  15.             else
  16.                 seg = Convert::ToInt32(textBox3->Text);
  17.         int num; //numero de mensajes a enviar
  18.             if (textBox8->Text == "")
  19.                 num = 0;
  20.             else
  21.                 num = Convert::ToInt32(textBox8->Text);
  22.         int act = 1;
  23.         Sleep(2000);
  24.         //#define ESC 0x1b
  25.             do
  26.             {
  27.                 int act2 = 1;
  28.                 do
  29.                 {
  30.                 String^ act3 = Convert::ToString(act2);
  31.                 String^ act4 = "text" + act3;
  32.                 Sleep(seg*1000);
  33.                 SendKeys::SendWait(act4); [color=#FF0000]<---Aqui esta el problema, envia el mensaje "text1", "text2", etc, en vez del valor de las strings con ese nombre[/color]
  34.                 SendKeys::SendWait("{ENTER}");
  35.                 act2 = act2++;
  36.                 } while (act2 <= num);
  37.             act = act + 1;
  38.             } while (act <= rep);
  39.  

Páginas: [1]