|
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 ... 38 39 [40] 41 42 ... 77
976
« en: Martes 30 de Mayo de 2006, 21:07 »
añadis una cadena TString.Add('Hola Mundo');
borras la cadena TString.Delete('Hola Mundo');
977
« en: Lunes 29 de Mayo de 2006, 21:17 »
Si usas delphiX no hace falta el sdk de directX.
978
« en: Lunes 29 de Mayo de 2006, 21:15 »
979
« en: Sábado 27 de Mayo de 2006, 21:19 »
var today : TDateTime; begin today := Time; ShowMessage('today has date = '+DateToStr(today)); ShowMessage('today has time = '+TimeToStr(today)); end; salida today has date = 30/12/1899 today has time = 13:37:25
lo que te sierve a vos es: ShowMessage('Fecha y hora de hoy es: ' +DateToStr(today) + TimeToStr(today));
O bien FechaInicial: String; FechaInicial := DateToStr(today) + ' ' + TimeToStr(today);
980
« en: Sábado 27 de Mayo de 2006, 00:42 »
Una posibilidad seria sacar numeros al azar y almacenarlos en un vector de 15 elementos. Ates de agregarlo al vector verificar si no está repetido. La otra seria tener un vector de 50 elementos e inicialmente tener el indice del vector correspondiendo con el valor almacenado. Algo así: var vector: array[1..50] of integer; begin for i:=1 to 50 do vector[i] := i;
y ahora mezclarlo como si fuera una baraja de naipes: for i:=1 to 50 do begin randomIndex := random(50)+1; Intercambiar(vector[i], vector[randomIndex]); end; procedure Intercambiar(A,B: Integer); var c: integer; begin C := A; A := B; B := C; end;
Ahroa tienes un vector de 50 elementos con 50 numeros aleatoreos de 1 al 50. Si usas los primeros 15, tendras 15 numeros aleatoreos del 1 al 50 sin repetir. Puedes usar del 1 al 16, o del 30 al 45, es lo mismo.
981
« en: Viernes 26 de Mayo de 2006, 00:27 »
Tienes que pasarle como parametro la cadena de texto que quieres que se borre.
982
« en: Viernes 26 de Mayo de 2006, 00:08 »
Supongo que en la consulta SQL usas el BETWEEN con dos fechas de la tabla. No se como haces para ingresar la fecha en las tablas, pero la idea seria que puedas convertir la fecha de tipo TDateTime que es la que te devuelve la funcion de la hora de delphi (no tengo el compilador a mano, pero debe ser GetDate, GetDateTime o algo así) al formato de fecha de las bases de Datos. Revisa este post que tienes ahí unos links que te pueden servir. http://foros.solocodigo.com/index.php?showtopic=21600lamentablemente ahora me quede sin mi maquina por un par de días y no tengo el compilador para buscar. Los pasos genericos serían: 1)obtener la fecha actual 2)Convertir el formato TDateTime de la fecha que obtuviste a una cadena de texto con el formato de la fecha de la base de datos. 3)hacer la cosulta y en una fecha colocar la de la tabla y en la otra fecha la fecha que obtuviste formateando la actual. (revisa el link para ver como se puede formatear una fecha a una cadena con otro formato) Si tenes dudas sobre alguno de los pasos avisame y veo que puedo hacer. Por si las dudas, postea tambien la constula que usas para obtener registros entre dos fechas.
983
« en: Martes 23 de Mayo de 2006, 13:27 »
Si, pero no es DelphiX, es UnDelphiX. La diferencia entre DelphiX y UndelphiX es que la primera usa cabeceras no estandard de DirectX y la segunda si. Y como las cabeceras estandard piden como parametros de posicion TPoint (o dos TPoint para una recta) y no TRect que es la que uso el que escibio DelphiX (Hori): resulto ser más rápido UnDelphiX. Pagina principal: http://turbo.gamedev.net/undelphix.asp
984
« en: Lunes 22 de Mayo de 2006, 16:33 »
fijate si esto funciona Si quieres escribir directamente en el recuadro, usa el procedimiento Ventana. procedure Recuadro(X1,Y1,X2,Y2,Plano,Fondo : byte); var I : byte; S : char; Begin TextColor(Plano); TextBackground(Fondo); S := #205; for I := (X1+1) to (X2-1) do begin GotoXY(I,Y1); Write(S); GotoXY(I,Y2); Write(S); end; S := #186; for I := (Y1+1) to (Y2-1) do begin GotoXY(X1,I); Write(S); GotoXY(X2,I); Write(S); end; S := #201; GotoXY(X1,Y1); Write(S); S := #187; GotoXY(X2,Y1); Write(S); S := #200; gotoXY(X1,Y2); Write(S); S := #188; GotoXY(X2,Y2); Write(S); End; procedure Ventana(X1,Y1,X2,Y2,Plano,Fondo,PlanoRecuadro,FondoRecuadro : byte); Begin Window(X1,Y1,X2,Y2); Recuadro(1,1,X2-X1,Y2-Y1,PlanoRecuadro,FondoRecuadro); Window(X1+1,Y1+1,X2-2,Y2-2); Textcolor(Plano); TextBackground(Fondo); ClrScr; End;
986
« en: Jueves 18 de Mayo de 2006, 21:12 »
Hola Jefecito, me puedes decir que es esto, Eternal me 'bia preguntado, pero yo pense que era un mensaje de Enko, pero es algo sobre la página.
Y porque un mensaje mio estaría ahí, arriba de todo el foro? dice algo como: "Ingrese aqui cualquier texto (o archivo html), que tiene que ser codificado"
987
« en: Jueves 18 de Mayo de 2006, 02:28 »
Cual es el formato de la fecha de la tabla?
988
« en: Jueves 18 de Mayo de 2006, 02:26 »
Solamente si estas usando seguido el proyecto. Lo que hace es hacelerar la compilacion
Si no vas a usar mucho tiempo el proyecto, o vas a pasar el codigo fuente a alguien, podes borrarlos sin problemas. (*~).
989
« en: Miércoles 17 de Mayo de 2006, 17:31 »
Si es para windows XP podrías probar con un programita que hice hace tiempo: Es un programa que les permite personalizar el Icono, el Comentario, el Fondo y el Color de las letras de los iconos en una carpeta de Windows XP. Tambien funciona para el 98 pero no tiene mayor beneficio ya que ese sistema si lo permite.
Copien el nombre de la carpeta y peguenlo donde dice "Nombre Carpeta", el botón para el dialogo de selección no funciona.
bajar aqui
990
« en: Miércoles 17 de Mayo de 2006, 17:24 »
Para que no parpadee deberias usar lo que seria "double buffering" pero en una Form. Deberias tener un TBitmap con el tamaño de toda la Form. var Buffer: TBitmap; begin Buffer := TBitMap.Create; Buffer.Width := Form1.Width; Buffer.Height := Form1.Height; end;
Luego, por cada ciclo del timer: //borrar el buffer Buffer.Canvas.FillRect(Rect(0,0, Buffer.Width, Buffer.Height)); //dibujar la pelota en el canvas del buffer Buffer.Canvas.Draw(X,Y, Pelota); //volcar el buffer sobre la la Form comenzando en (0,0) //se puede comenzar en otra posicion Form1.Canvas.Draw(0,0, Buffer);
Si lo que etabas haciendo es mover un TPicture cambiando (X,Y), y tenes varias Botones, Edits y otras cosas en la forma, podrias probar con hacer el buffer del tamaño minimo necesario para que la imagen que se mueve quepe en el y el resto sigue siendo igual. (no te olvides de liberar el buffer: Buffer.Free).
991
« en: Miércoles 17 de Mayo de 2006, 17:04 »
fijate en la ayuda de delphi sobre TMouse; es un componente no visual que te indeca la posicion del raton en la pantalla y si esta presionado algun boton. Para desplazar cualquer componente en la forma, usa TOP y LEFT. Toma en cuenta que (0,0) seria la esquina superior izquierda de la Form y no la esquina superior izquierda de la pantalla. Probá este codigo en el evento onMouseMove procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Button1.Top := Y; Button1.Left := X; end;
la esquina superior i<quierda del boton, se posiciona en donde sta el puntero. (tal vez a vos, se te haya ido para cualquier lado porque invertiste X con Y?) Mouse.CursorPos.Y - Form1.Top; Mouse.CursorPos.X - Form1.Left;
esto seria la posicion relativa en donde se encuentra el puntero del raton, si la Form se encontrara en la posicion (0,0) de la pantalla.
992
« en: Miércoles 17 de Mayo de 2006, 02:42 »
Items: TString; TString[Index: Integer],son los elementos del listbox, es decir un array de strings. Podes añadir elementos con Items.Add('string'); ItemIndex: Integer, es el Index del elemento seleccionado en un listbox procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(ListBox1.Items[ListBox1.ItemIndex]); end;
Esto te mostrara un aviso con el elemento seleccionado en un listbox. Si no se ha seleccionado ninguno, manda error.
993
« en: Miércoles 17 de Mayo de 2006, 02:33 »
Recien probé y esto funciona. procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Button1.Top := Y; Button1.Left := X; end;
Al mover el mouse, el Button1 se posiciona en donde esta actualmente el Puntero de RAton. Igualmente, no entendí muy bien que es lo que quieres hacer. Si no es eso, avisa.
994
« en: Martes 16 de Mayo de 2006, 18:54 »
Turbo pascal no tiene ninguna predefinida.
Si usas Free Pascal, es probable que este alli IntToStr o Int2Str y tambien, StrToInt o Str2Int.
995
« en: Martes 16 de Mayo de 2006, 18:51 »
Me habia olviado..... Si te interesa imprimir el codigo fuente de pascal en color, puedes usar una herramienta que escribi en delphi: http://galeria.teleportmedia.com/albums/us...Pascal2Html.rarEs un programa que escribí que permite colorear la sintaxis de un codigo fuente en pascal a un archivo html. Tiene varias perfiles para colorear la sintaxis y permite personalizar uno de ellos. Tambien se puede agregar las palabras reservadas en el archivo reservados.txt por si algun día aparece una palabra reservada nueva.
996
« en: Martes 16 de Mayo de 2006, 18:27 »
TForm.Components[Index: Integer]: TComponents. La propiedad components es una lista de los componentes que posee la form. Lo unico que hace es guardar las direcciones de memoria en donde se encuentra cada instancia de cualquier componente que pertenece a la From especifica. Por eso, cuando escribes Lo que se hace, es indicar al compilador que en la direccion de memoria donde apunta Components[Index] se encuentra un objeto de tipo TMemo y este te permite acceder a sus propiedades especificas. El index te lo autogenera Delphi, por eso es que tienes que escribir los Index que el le asigna. Si quieres, puedes usar tu propia lista de componentes. var myComponentes: TList; begin myComponents := TList.Create; myComponents.Add(Memo1); myComponents.Add(Memo2); myComponents.Add(Memo3); myComponents.Add(Memo4); for iCount=0 to myComponents.Count - 1 do begin if myComponents[iCount] is TMemo then TMemo(Components[i]).Text:= Caracter; end; myComponents.Free; end;
997
« en: Jueves 11 de Mayo de 2006, 15:19 »
a x a o o x x o o o x o x o o x o o a o a o o o o
La cosa es que un for no te va servir; Horizontalmente i:=1; j:=1; while i<max do begin if matriz[i,j] = 'x' then matriz[i,j] := '0'; if matriz[i,j] = 'a' then break; {sale del ciclo} i := i + 1; end;
Verticalemnte i:=1; j:=1; while j<max do begin if matriz[i,j] = 'x' then matriz[i,j] := '0'; if matriz[i,j] = 'a' then break; {sale del ciclo} j := j + 1; end;
Diagonalmente i:=1; j:=1; while j<max do begin if matriz[i,j] = 'x' then matriz[i,j] := '0'; if matriz[i,j] = 'a' then break; {sale del ciclo} j := j + 1; i := i+1; end;
998
« en: Miércoles 10 de Mayo de 2006, 23:04 »
probaste con el edit.exe del DOS.? Inicio>>Ejecutar>>edit
999
« en: Miércoles 10 de Mayo de 2006, 14:40 »
uses CRT; var i:Integer; begin {$I-} ReadLn(I); if IOResult <> 0 then WriteLn('Error'); {$I+} Readkey; end.
Esto desactiva la verificacion de Entrada y Salida, de manera si ingresas una letra, la ejecutable no te manda un error en tiempo de ejecucion. IOREsult es el resultado de una operacion de E/S, si es Distinto de 0, es porque hubo un error lo que quiere decri que el numero esta mal escrito.
1000
« en: Martes 9 de Mayo de 2006, 21:23 »
var i: Integer; begin Randomize; //procedimiento que hace que se cambie la semilla del Random i := Random(100)+1; //Random es la funcion que crea numeros pseudoaleatorios ShowMessage(IntToStr(i)); end;
Páginas: 1 ... 38 39 [40] 41 42 ... 77
|
|
|