• Jueves 15 de Mayo de 2025, 00:21

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

Páginas: 1 ... 39 40 [41] 42 43 ... 77
1002
Delphi / Re: Onkeydown Y Onkeypress
« en: Domingo 7 de Mayo de 2006, 19:48 »
onKeyPress incluye: onKeyDown y onKeyUP.

O sea, onKeyDown, es cuando pulsas un tecla abajo.
OnKeyUp, es cuando soltas una tecla pulsada
OnKeyPress es cuando haces las dos cosas, pulsar y soltar.

1003
Pascal / Re: Calcular Edad A Partir De Fechas.
« en: Sábado 6 de Mayo de 2006, 00:33 »
Cita de: "dont know"
la verdad necesio ayudacomo kda el codigo????
esk a mi me pidieron ese programa xa el lunes y ya hoy es viernes y si no lo entrego epruebo por favor ayudenme

pro con este programa los datos los introduces desd teclado????

si alguno sabe como kdo el  programa por favor ayudeme mi correo es

mariguana_pera@hotmail.com
auxilio :scream:  :scream:  :scream:
En este foro no se hacen tareas.
Dudas puntuales?

1004
Dudas informáticas / Re: Mi "c" Se Comparte Solo :(
« en: Sábado 6 de Mayo de 2006, 00:22 »
Off Topic:
¿Todo el mundo tiene el XP con Visual Styles?

1005
Delphi / Re: Sobre Random
« en: Sábado 6 de Mayo de 2006, 00:17 »
Tambien así podes mezclar Matrices, en el ejemplo 10x10:
Código: Text
  1.  
  2. for i:=1 to 10 do
  3.   for j:=1 to 10 do
  4.       Intercambiar(Matriz[i,j], Matriz[Random(10)+1, Random(10)+1]);
  5.  
  6.  

el procedimiento intercambiar ser'ia
Código: Text
  1.  
  2. procedrue Intercambiar(var A,B: Integer);
  3. var
  4.      C:Integer;
  5. begin
  6.    C := A;
  7.    A := B;
  8.    B := C;
  9. end;
  10.  
  11.  

1006
Delphi / Re: Sobre Random
« en: Sábado 6 de Mayo de 2006, 00:12 »
Forma dificil y tediosa (no recomendada):

Metes los numeros generados en un arreglo y cada vez que generas un numero, te fijas si ya esta en el arreglo.


Forma mejor pero mas restringida:

Generas un vector que contenga todos los numeros que necesitas. Por ejemplo un Arreglo de 60 elementos con los numeros del 1 al 60
Código: Text
  1.  
  2. var
  3.    Arreglo: array[1..60] of integer;
  4.    var i: Integer;
  5. begin
  6.   for i:=1 to 60 Arreglo[i] := i;
  7. end;
  8.  
  9.  
Luego, mediante random mezclas los numeros del arreglo intercambiandolos.
(supongo que podras hacer una funcion que intercamibe el valor de dos numeros,
la voy a llamar Intercambiar(A , B ).  a  ' a ' le asignda el valor de 'b' y a 'b' el valor de 'a'.
Código: Text
  1.  
  2. for i:=1 to 60 do
  3.   Intercambiar(Arreglo[i], Arreglo[Random(60)+1]);
  4.  
  5.  

Listo, tenes un arreglo con numeros del 1 al 60 intercambiados aleatoreamente.
Es como mezclar un mazo de naipes.

1007
Delphi / Re: Undido
« en: Viernes 5 de Mayo de 2006, 14:30 »
TEndría que ser con esto:
Código: Text
  1.  
  2. SpeedButton1.Down := True;
  3.  
  4.  

Pero por extraña razon no me esta funcionando  :scream:

1008
Delphi / Re: Cursores
« en: Viernes 5 de Mayo de 2006, 14:26 »
Existe una propiedad para los componentes visibles llamada "Cursor" fijate en la Paleta de Propiedades.

Solo tienes que seleccionar el que mas te guste para cada componente en la paleta y listo.

1009
Delphi / Re: Llenar Un Monton De Botones
« en: Viernes 5 de Mayo de 2006, 14:23 »
|Por sierto, podes tener arreglos de botones, en mi caso, use una matriz por comodidad.

Código: Text
  1.  
  2. arregloBotones: array[1..10] of TButton;
  3.  
  4. arregloBotones[1] := TButton.Create, etc.....
  5.  
  6.  

1010
Delphi / Re: Llenar Un Monton De Botones
« en: Viernes 5 de Mayo de 2006, 14:22 »
Para crear un boton en tiempo de ejecucion necesitas:
*Definir la variable del boton
Código: Text
  1.  
  2. var
  3.   Boton: TButton;
  4.  
  5.  
*Crear una instancia del Boton
Código: Text
  1.  
  2. Boton := TButton.Create(self);
  3. Boton := TButton.Create(From1);
  4. Boton := TButton.Create(nil);
  5.  
  6.  
*Cambiar sus propiedades
Código: Text
  1.  
  2. Width := 128;
  3. Height := 24;
  4. Parrent := Form1; //Quien es el Padre del boton, es decir, donde se va a dibujar
  5. Caption := 'Boton'
  6. onClick := Evento;
  7. Visible := True;
  8.  
  9.  
*Y finalmente liberarlo de la memoria
Código: Text
  1.  
  2. Boton.Free;
  3.  
  4.  

Los eventos en Delphi, es decir los tipo TNotifyEvent estan definidos asi>
Código: Text
  1.  
  2. type
  3.   TNotifyEvent = procedure(Sender: TObject);  
  4.  
  5.   TIntegerFunction = function: Integer;
  6.   TProcedure = procedure;
  7.   TStrProc = procedure(const S: string);
  8.   TMathFunc = function(X: Double): Double;
  9.  
  10.  

Asi, todos los eventos son procedimientos que tienen como parametro a "Sender" que es el que crea el evento. O sea, si hiciste click en un boton, en el evento onClick de ese boton, el Sender va a ser el boton.

Lo que pasa, es que sender es de tipo TObject, la clase padre de todas las clases. Todas las clases en Delphi estan heredadas en ella.  La Classe TButton, deriva de TCustomButton y esa en algun momento de TComponent y en muchas otra vueltas, finalemnte se llega a TObject.

Como las instancias de clases (seria el objeto creado) en Delpi son punteros y no contienen al objeto en si, mediante type casing podes acceder a las propiedades del parametro Sender como si fuera un TButton (o cualquier otra cosa, siempre que lo fuera)
Todos los TButton son TObject.
Algunos TObject pueden ser TButtons, por eso, en tu propio evento deber'ias verificar si el Sender definitivamente es un TButton con>
Código: Text
  1.  
  2. if Sender is TButton then
  3. begin
  4. end;
  5.  
  6.  
Si resulta que el Sender es un TButton entonces podes acceder a las propiedades del boton con>
Código: Text
  1.  
  2. TButton(Sender).
  3.  
  4.  

Existe la palabra reservada 'AS', que  cumple la funcion  type casing, pero es muuuuuuy lenta, y te conviene usar 'is' y luego type casing;
Código: Text
  1.  
  2. //esto te consume mucho tiempo
  3. //y no se asegura que sea un boton el sender
  4. //por eos puede haber un error en tiempo de ejecucion
  5. whith Sender as TButton do
  6. begin
  7.    Caption := 'Boton';
  8.    Visible := True;
  9. end;
  10.  
  11.  

El  Evetno seria algo asi>
Asignamos a nuestro boton, nuestro propio evento onClick
Código: Text
  1.  
  2. myButton.onClick := myClick;
  3.  
  4.  
El evento ser'ia algo asi,
Código: Text
  1.  
  2. procedure myClick(Sender:TObject);
  3. begin
  4.    //en realidad en este caso es 100% seguro de que el Sender es TButton
  5.    //porque nosotros mismos asignamos el evento a un boton
  6.   if Sender is TButton  then
  7.   begin
  8.      ...
  9.    end;
  10. end;
  11.  
  12.  

Supongo que con eso queda explicado. :P

1011
Delphi / Re: Llenar Un Monton De Botones
« en: Viernes 5 de Mayo de 2006, 03:47 »
Tendras que crear lo botones en tiempo de ejecucion y crear tu propio evento para los clicks a los botones.

Te paso un código completo de ejemplo.
Código: Text
  1.  
  2. unit Unit1;
  3.  
  4. interface
  5.  
  6. uses
  7.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  8.   Dialogs, StdCtrls;
  9.  
  10. type
  11.   TForm1 = class(TForm)
  12.     procedure FormCreate(Sender: TObject);
  13.     procedure FormDestroy(Sender: TObject);
  14.   private
  15.     { Private declarations }
  16.   public
  17.     myButtons: array[1..5, 1..5] of TButton;
  18.     procedure myButtonClick(Sender: TObject);
  19.   end;
  20.  
  21. var
  22.   Form1: TForm1;
  23.  
  24. implementation
  25.  
  26. {$R *.dfm}
  27.  
  28. procedure TForm1.myButtonClick(Sender: TObject);
  29. begin
  30.   if Sender is TButton then
  31.   begin
  32.     ShowMessage(TButton(Sender).Caption);
  33.     //TButton(Sender).propiead es el butotn que le hicieron clik
  34.   end;
  35. end;
  36.  
  37. procedure TForm1.FormCreate(Sender: TObject);
  38. const
  39.   ConstWidth = 32;
  40.   ConstHeight = 32;
  41. var
  42.   i,j: Integer;
  43. begin
  44.   for j:=1 to 5 do
  45.     for i:=1 to 5 do
  46.     begin
  47.       myButtons[i,j] := TButton.Create(self);
  48.       myButtons[i,j].Caption := 'test';
  49.       with  myButtons[i,j] do
  50.       begin
  51.         Width := ConstWidth; // ancho
  52.         Height := ConstHeight; //alto
  53.         Left := i * ConstWidth; //posicion X
  54.         Top := j * ConstHeight; //posicion Y
  55.         Parent := Form1; //en donde se dibujan los botones
  56.         Caption := IntToStr(Random(60)+1);
  57.         onClick := myButtonClick;
  58.         Visible := True; //para que se vean
  59.       end;
  60.     end;
  61. end;
  62.  
  63. procedure TForm1.FormDestroy(Sender: TObject);
  64. var
  65.   i,j: Integer;
  66. begin
  67.   for j:=1 to 5 do
  68.     for i:=1 to 5 do
  69.       myButtons[i,j].Free;
  70. end;
  71.  
  72. end.
  73.  
  74.  

Lo que hace el codigo es crear 25 botones  a los cuales si haces click, te Hace un ShowMessage con la caption correspondiente al boton que se hizo click.

1012
Pascal / Re: Configurar Free Pascal
« en: Martes 2 de Mayo de 2006, 22:47 »
Usas Linux?

Porque el de windows te trae una IDE idéntica a la de Turbo Pascal y trae 2 juegitos :P.

Si es Linux, no sabría decirte.

1013
Pascal / Re: Estoy De Vuelta
« en: Martes 2 de Mayo de 2006, 22:37 »
No dije "que tenes que aprender primero pascal", sino "que te convendría aprender primero Pascal".

Como ya dije, algunos tutoriales de Delphi desde Cero te traen las nociones básicas del lenguaje pascal que suele ser más que suficiente.

http://foros.solocodigo.com/index.php?showtopic=20279

1014
Delphi / Re: Me Mandaron
« en: Martes 2 de Mayo de 2006, 22:35 »
Cita de: "seam"
quiero aprensder delphi pero me dices que tengo que aprender pascal pero ese es el problema ya que de pascal ma mandaron a delphi y en este foro salio vicebersa yo quiero apernder
Delphi es Object Pascal.
Si aprendes Delphi, estaras aprendiendo Object Pascal por lo que tambien aprendes Pascal porque por mas que sea objeto orientado, sigue siendo Pascal.

Hay tutoriales en red de Delphi desde 0 (cero) ellos te empiezan a mostrar primero las nociones básicas de pascal, por lo que aun así, primero estarías aprendiendo primero Pascal.

Asi que lo que te recomiendo es que busques un tutorial de Delphi Desde Cero.
proba con este que parece maso menos bueno:

http://www.programacionfacil.com/delphi/indice.htm

1015
Dudas informáticas / Re: Aceleradores De Internet
« en: Lunes 1 de Mayo de 2006, 15:56 »
Más que hacelerar tu descarga, te la estabilizan y ya. Hacen que bajes, por ejemplo a 15 KB/s  practicamente todo el tiempo.

A mi me resulta muy práctico y comodo:
http://www.freedownloadmanager.org/

ademas, tengo una extencion para FireFox que es la FlashGot que te permite interceptar las descargas con algun gestor de descargas.

1016
Dudas informáticas / Re: Blinkenlights
« en: Lunes 1 de Mayo de 2006, 15:52 »
No se, pero me preguno, ¿como cuanto sale esa llamada?

1017
C/C++ / Getwindow Y Getactivewindow
« en: Jueves 27 de Abril de 2006, 20:20 »
No logro hacer que la funcion GetActiveWindow me devuelva algo distinto de NULL jutno con GetWindow.
Lo estoy haciendo en una aplicacion consola con DevC++, no se si eso tendrá algo que ver.

por sierto, El while nunca se me ejecuta hasta si pongo como condicion que sea Igual en vez de Distinto.
Código: Text
  1.  
  2. #include <cstdlib>
  3. #include <iostream>
  4. #include <windows.h>
  5.  
  6. using namespace std;
  7.  
  8. int main(int argc, char *argv[])
  9. {
  10.   HWND hWnd;
  11.   LPTSTR lpClassName;
  12.   LPTSTR lpWindowText;
  13.  
  14.   hWnd = GetWindow(GetActiveWindow(), GW_HWNDFIRST);  
  15.   GetClassName(hWnd, lpClassName, sizeof(lpClassName));
  16.   hWnd = GetActiveWindow();
  17.  
  18.   while(hWnd!=NULL){
  19.     GetClassName(hWnd, lpClassName, sizeof(lpClassName));
  20.     GetWindowText(hWnd, lpWindowText, sizeof(lpWindowText));
  21.     cout<< hWnd << ":  " << lpClassName << " - " << lpWindowText << endl;
  22.     hWnd = GetWindow(hWnd, GW_HWNDNEXT);
  23.   }
  24.  
  25.   system("PAUSE");
  26.   return EXIT_SUCCESS;
  27. }
  28.  
  29.  

1018
Delphi / Re: Internal Error
« en: Jueves 27 de Abril de 2006, 19:14 »
Yo tengo delphi 7, si quieres puedes pasarme el código y me fijo a ver que es.

Supongo que el error debe estar antes pero se manifiesta recien al final. :ph34r:

1019
Pascal / Re: Consulta Posiciones
« en: Jueves 27 de Abril de 2006, 19:06 »
Lo importante en realidad de Real:5:2 es el "2".

Es decir, para formatear la salida de un número real, primero despues de los primeros ":" hay que pasar los espacios que quieres dejar antes de escribir el numero, pueden ser 0 para no dejar nada.
Los segudnos ":" indican la cantidad de decimales que quieres que se vean. Puede ser todos, para eso no pongas nada (Real:3, dejaria 3 espacios y mostraría todos los decimales en formato científico.)
Podrías escribir sin los dos puntos es decir Writeln(Real); o como te guste.

Te sugiero que pruebes el código de _.B._

1020
Pascal / Re: Consulta Posiciones
« en: Jueves 27 de Abril de 2006, 14:23 »
Cita de: "lau82"
Cita de: "Enko"
Código: Text
  1.  
  2. Writeln('El area del triangulo es:', area:5:2);
  3.  
  4.  

Lo que hace el 5, es dejar 5 espacios (' ') entre  'es:' y area
Lo que hace el 2, es mostrar solo los 2 ultimos decimales del numero area.
Pero para que necesito dejar ese espacio? eso es lo que no entiendo....porque es necesario dejar un espacio de 5  en este ejemplo.... ?
Si no quieres no dejes espacios.  :scream:

Real:0:2


Yo pensé que quierías dejar espacios. Que se yo. :smartass:

1021
Pascal / Re: Consulta Posiciones
« en: Miércoles 26 de Abril de 2006, 21:25 »
Código: Text
  1.  
  2. Writeln('El area del triangulo es:', area:5:2);
  3.  
  4.  

Lo que hace el 5, es dejar 5 espacios (' ') entre  'es:' y area
Lo que hace el 2, es mostrar solo los 2 ultimos decimales del numero area.

1022
Delphi / Re: Duda En Una Funcion
« en: Lunes 24 de Abril de 2006, 17:33 »
Cita de: "Perrero"
Mmmmm, osea que no hay manera de que los RadioButtons puedan funcionar en la funcion?  :(
Justamente si se puede.
¿Quieres que segun el RadioButton seleccionado te llea desde uno u otro archivo?

1023
Delphi / Re: Buscar En La Tabla Por Un Campo Que No Sea La Llav
« en: Domingo 23 de Abril de 2006, 15:35 »
Revisa este sitio:
http://www.elrinconcito.com/delphi/tutorial/tutorial.htm


bajate el tutorial que incluye al TQuery.  Creo que es el captulo 9.

1024
Delphi / Re: Como Ingresar Datos De Un Combobox
« en: Domingo 23 de Abril de 2006, 15:29 »
Para saber cual es el elemento seleccionado en un ComboBox usa la propiedad Text.
Código: Text
  1.  
  2. ComboBox.Text: string
  3.  
  4.  

Y para insertar en la tabla, sería como insertar una variable de tipo string.

1025
Delphi / Re: Duda En Una Funcion
« en: Domingo 23 de Abril de 2006, 15:20 »
Código: Text
  1.  
  2. if RadioButton1.Checked then
  3.    Codigo  := Extraer(Archivo1)
  4. else if RAdioButton2.Checked then
  5.   Codigo := Extraer(Archivo2)
  6. ...
  7.  
  8.  

Páginas: 1 ... 39 40 [41] 42 43 ... 77