PREGUNTAS CONTESTADAS - Delphi≤nguaje=

 Hay un total de 680 Preguntas.<<  >> 

    Pregunta:  32226 - ENVIAR Y RECIBIR ARCHIVOS CON EL NMFTP
Autor:  Jorge
Necesito saber si se pueden enviar directorios, o varios archivos a la vez en un programa de delphi utilizando un componente NMFTP.
Gracias.
  Respuesta:  xavier bravo
Si se puede, yo hice un cliente de correo personalizado para la empresa en donde estoy, y para agregar uno o mas archivos a la aplicación utilice un codigo como este:

NMSMTP1.PostMessage.Attachments.Add(OpenDialog1.FileName)

el unico detalle es que solo puedo adjuntar de uno en uno los archivos y pueden ser varios.

espero te sirva

    Pregunta:  32771 - PRELOADER EN DELPHI
Autor:  luis luis cañera
Tengo una aplicacion con bases de datos y mientras se cargan las tablas quisiera poner un preloader.¿Alguien me puede decir como hacerlo? Gracias
  Respuesta:  hugo o.h.
hola luis,

no se a que te refieras con un preloader, pero quiero suponer que algo asi como una ventana splash de bienvenida que se inicie rapidamente y que se oculte cuando termine la carga inicial de la bd... lo que yo hago es poner una forma comun y corriente (la puedes poner con un estilo sin borde, que sea onTop y ponerle una imagen para hacerlo mas vistoso), y en el codigo fuente del proyecto poner algo como:

....

// El splah para la presentación...
// se crea antes que cualquier otra cosa en la aplicacion....
frmPresentacion := TfrmPresentacion.Create(Application);
frmPresentacion.Show;
frmPresentacion.Refresh;

// se procede normalmente....
Application.Initialize;
// esta es la forma principal...
Application.CreateForm(TfrmPrincipalGym, frmPrincipalGym);
// este es el datamodule que se conecta con la bd y abre las tablas
// de inicio, y es aqui donde se consume buena parte del tiempo...
Application.CreateForm(Tbd, bd);

// despues de que temine cerramos la presentacion...
frmPresentacion.Release;
Application.Run;
...

ojala y te sirva... saludos

Hugo

EOF

    Pregunta:  33035 - COMO AGREGAR EL EDITOR DE ECUACIONES DE MICROSOFT
Autor:  Freddy Chombo
Hola: estoy haciendo un proyecto para mi tesis en delphi, que maneja preguntas y respuestas. Entonces para cada pregunta se pueden agregar graficos, y ecuaciones. quiero utilizar la potencia del editor de ecuaciones de microsoft para realizar las ecuaciones.

Gracias por su colaboracion
  Respuesta:  Hugo OH
Hola,

puedes utilizar un OleContainer e insertar un objeto del editor de ecuaciones... es bastante sencillo, aunque no se si te sirva para el nivel de funcionalidad de quieras...

de hecho, puedes modificar el contenido del control en tiempo de ejecución, con todo y la paleta del editor de ecuaciones.... puedes utilizar los metodos SaveToFile y LoadFromFile para guardar los valores de las ecuaciones (no estoy seguro si sea la forma correcta pero alguna vez lo hice y salio bien)... o usar Streams y almacenar los valores en campos blobs de bases de datos (no lo he hecho nunca pero creo que puede funcionar)...

Saludos

    Pregunta:  33133 - ¿CÓMO SE PUEDE AÑADIR UNA FUENTE DESDE UNA APLICACIÓN?
Autor:  O.Bernal
Hola

He desarrolado una aplicación que debe usar un deterninada Font. Necesito que la aplicación pueda usar ese mismo tipo de letra en cualquier ordenador, aunque no esté instalada.

¿Alguien me puede dar una idea?

Gracias anticipadas.
  Respuesta:  Miguel Lucero
Acá va el truco:

Para cargarlo, (por ejemplo en el evento OnCreate de tu form):

procedure TForm1.FormCreate(Sender: TObject);
begin
AddFontResource('D:\FONTS\FUENTE.TTF');
SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
end;

Y al salir de tu aplicación, lo liberas con:

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
RemoveFontResource('D:\FONTS\FUENTE.TTF');
SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);
end;

La ubicación de la fuente puede ser la misma que la aplicación por lo que deberías cambiar D:\FONTS por la ruta de la de aplicación o usar la función ExtractFilePath( Application.Exename) para saber en que ruta está tu exe.

    Pregunta:  33236 - COMO IMPRIMO UNICAMENTE 2 DECIMALES EN UN REPORTE
Autor:  José Cruz
aparecen muchas decimales cuando lo mando a impresion deseo que me aparescan unicamente 2 decimales, gracias por contestar
  Respuesta:  omar hamden
mira no se si te refieres a imprimir en pantalla o en impresora, pero en pantalla para controlar el numero de digitos y decimales puedes usar FLOATTOSTRF(numero decimal, FFGENERAL,numero de digitos,numero de decimales) ejemplo...

x:=456.681;

sería FloatToStrF(x,ffgeneral,8,2); resultado= 456.68

espero te sirva...
  Respuesta:  german nicolas acosta
con la fucion trunc puedes indicar hasta cuantas decimales quieres que te imprima, es lo unico que debes hacer.

    Pregunta:  33479 - COMO MANEJAR LISTAS DINAMICAS
Autor:  german nicolas acosta
necesito saber como manejar listas dinamicas para cargarlas en un sistema de chat, donde pueda saber quien esta en sesion por medio de la lista dinamica.

es decir cargar los datos de la IP remota en la lista dinamica, mas que nada lo que me interesa saber es como manejar el apuntador de la lista.
  Respuesta:  Alexander Botero Gomez
hola.

si te interesa manejar listas dinamicas, puedes hacer lo siguiente.

type

punteronodo = ^nodo

nodo = record
datos:Tdatos;
enlace : punteronodo
end;

var
nodoinicial : punteronodo;
nodoactual : punteronodo;
begin
new(nodoinicial);
new(nodoactual);

{lo que tienes que tener en cuenta es tener un nodo que apunte al inicio de la lista; y el otro nodo se encargara de recorrer la lista.

tienes que tener mucho cuidado con el nodo inicial, por que con el es el que sabes donde inicia la lista.}

    Pregunta:  33481 - FILAS DE COLORES EN UN GRID
Autor:  luis
Alguien sabe de algun componente que permita poner las filas de distintos colores en un grid? Muchas Gracias.
  Respuesta:  Miguel Lucero
Luis

Fijate en el siguiente código que te sirve para colorear una celda o una fila de un TStringGrid. Además esto mismo lo podés usar en un DBGrid con algunos cambios.

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
dx: Integer;
begin
with (Sender as TStringGrid) do
begin
// No cambiar el color de la primer fila o columna
if (ACol = 0) or (ARow = 0) then
Canvas.Brush.Color := clBtnFace
else
begin
case ACol of
1: Canvas.Font.Color := clBlack;
2: Canvas.Font.Color := clBlue;
end;
// Dibujar la banda
if ARow mod 2 = 0 then
Canvas.Brush.Color := $00E1FFF9
else
Canvas.Brush.Color := $00FFEBDF;
Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, cells[acol, arow]);
Canvas.FrameRect(Rect);
end;
end;
end

    Pregunta:  33500 - DE REAL A INTEGER
Autor:  jose ferreiro
Alguien me podria decir como pasar un numero de un tipo real a otro integer.
por ejemplo de 224.68 quiero tener 224.
Gracias
  Respuesta:  Luis Felipe García Gutiérrez
lo que se puede hacer es lo siguiente:

primero se debe definir la variable que lleva el número decimal de tipo variant, luego el siguiente código...

var
entero:variant;
begin
entero:=numero,decimal;
entero:=(entero div 1));
end;

con ésto en entero queda guardado el valor sin decimales requerido...

espero haber ayudado con algo.

Suerte!!!
  Respuesta:  Santiago Estupiñan
var
r:real;
f,RE:integer;
begin
val(edit1.text,r,f);
RE:=trunc(r);
edit2.text:=inttostr(RE);
end;

Prueba con este codigo y que te sirva de ayuda saludos.
  Respuesta:  antonio perez
Hay una funcion que realiza esto.
var integer:=ROUND(dato real);
  Respuesta:  german nicolas acosta
para quitar la parte decimal de un numero real solo usa la funcion TRUNC para que quede unicamente la parte entera y quite la parte decimal de el numero.

    Pregunta:  33545 - COMO HACER FUNCIONAR PROGRAMAR EN DELHI EN WINDOWS 2000 NT
Autor:  eugenia del pino
Tengo la siguiente dificultad y no se si existe alguna solucion, cuando ejecuto un programa desarrollado en Delphi 3 y otro en Delphi 5 en la plataforma del WINDOWS 2000 NT no deja ver las previstas de los informes en el computador inficando un Error de Memoria Ejemplo
Access mode 0x0000 ...

Me dijeron que si lo compilaba en esa plataforma podia solucionar el problema pero el ERROR persiste siendo que los mismos ejecutables no tiene ninguna dificultad con otro version ejemplo (Windows 95, 98, ME).

Cualquier sugerencia al respecto sera bien recibida

Gracias...
  Respuesta:  Elena Tejado
A mí me ocurría lago parecido. Todos los informes crean una copia temporal en disco para poder hacer el previo. El problema está en que la función que itenta capturar el directorio temporal de Windows no admite tanto carateres, y en esos sistemas operativos a veces depende del usuario y el path es demasiado largo. Yo lo solucioné cambiando la variable de entorno Temporal o Tmp para que sea corta.
Espero que te sirva.
  Respuesta:  Julio César Plascencia Hernández
Buenas tardes:

Si tu mensaje de error comienza con "EAccess Violation..." o algo similar, entonces el error está en el orden de creación de objetos de tu aplicación. Pensando en que posees el código fuente, te sugiero depurar el programa revisando minuciosamente la ejecución línea por línea de código y cuando llegues al error ver que objeto necesitas crear antes del que te provoca el error o buscar un lugar más adecuado en código para la correción. Si esto no corrige tu problema puedes comunicarte conmigo.

    Pregunta:  33876 - CONEXIÓN CON SYBASE
Autor:  David Silva
Hola! Estoy realizando una conexión con Delphi a Sybase, pero al momento de accesar a la Base de Datos, me muestra que un usuario realiza muchos procesos como si fueran varias sesiones, como puedo hacer para que solo trabaje en una sesión.
Los procesos me los muestra en la herramienta de Sybase llamada Sybase Central.
  Respuesta:  saulap
lo que debes hacer es establecer un Alias desde el odbc de la pc que ejecutara el sistema
dentro del codigo y progrmas de delphi relaciona todos los llamados ala BD atravez del alias y asi te podras conectar ala BD mediante clientes de sybase y solo seran varios usarios si te conectas con el mismo login desde ip's diferentes

|<  <<  43 44 45 46 47 48 49 50 51 52 53  >>  >|