PREGUNTAS CONTESTADAS - Delphi≤nguaje=

 Hay un total de 680 Preguntas.<<  >> 

    Pregunta:  11236 - CALLER ID?
Autor:  Daniel Eugenio Aguil Mallea
Estoy tratando de construir un detector de llamadas por medio del modem, pero la verdad es que no se como hacer para poder obtener el numero de la llamada entrante al modem, por medio de soft!. Mi modem es compatible!
desde ya muchisimas gracias
PD cualquier informacion me es útil.
  Respuesta:  Sebastian Silva
Necesitas 3 cosas:

1) Que la línea telefónica reporte esta información (normalmente es un servicio que se solicita a la prestataria telefónica)

2) Que el módem identifique este dato, normalmente la cadena que se le tiene que enviar al módem es "AT#CID=1"

3) Leer el puerto de la PC en donde se encuentra el módem e identificar la cadena. Para hacer esto podés usar alguna librería (como AsyncPro) o usar directamente el driver de Windows.

Seba

    Pregunta:  11330 - COMO OBTENER EL TAMAñO DE UN DIRECTORIO EN DELPHI
Autor:  Israel Renato Macip Millán
Estimados amigos, necesito saber como puedo obtener el tamaño de una carpeta de mi sistema de archivos desde delphi 4 o 5, ya que solo en la ayuda trae el comando llamado FileSize, pero este solo proporciona el tamaño de un solo archivo en especifico, mas no el de toda la carpeta.

Si alguien de ustedes lo sabe o sabe la programacion, le agradecedé bastante, bastante su ayuda

Queda de Ustedes su amigo
  Respuesta:  qdevelop2000
Busca en la ayuda de Delphi "FindFirst" y "FindNext" pues te encontrará los archivos . y .. y te devolverá el resultado en una estructura.

    Pregunta:  11340 - "COMO HAGO FUNCIONAR UNA BD EN DELPHI COMO CLIENTE/SERVIDOR"
Autor:  Norma Alcala
Hola desearia saber como puedo hacer funcionar una base de datos en ambiente Cliente/Servidor. Esta base de datos esta hecha en Interbase y deseo hacerla funcionar como Cliente/Servidor pero Localmente en mi maquina.
Les agradecere mucho su ayuda.
  Respuesta:  qdevelop2000
Debes instalar un cliente de Interbase además del servidor.

    Pregunta:  11631 - DXF PARA DELPHI
Autor:  Eric Goldberg
alguien sabe como hacer que delphi lea un archivo .dxf , para que genere un mapa en la pantalla de este archivo, Gracias
  Respuesta:  Marco Romero
Puedes mirar en http://www.hicomponents.com/zzimageen.asp

Un saludo.

    Pregunta:  11659 - TABLA ACCES CON CAMPO TIPO HORA.
Autor:  Pepe Romero
Estoy utilizando una base de datos Access en Delphi 5. Una de las tablas tiene un campo de tipo HORA (8:30 p.ej.) y mi problema es que al visualizarlo en Delphi (en cualquier control de datos) me aparece así: 31/12/99 8:30. Es decir, es como si me transformara el formato de hora-corta en Acces al formato de Fecha/Hora pero incluyendo un fecha ficticia (curiosamente el último día del pasado milenio). ¿Podéis ayudarme a resolver este "entuerto"?. Gracias anticipadas.
  Respuesta:  qdevelop2000
Puede hacerlo de varias formas.
Una de ellas es poner en la propiedad DisplayFormat del TField de tipo Fecha/hora hh:mm
o formatear la salida a tu gusto en el GetText del TField.

    Pregunta:  11676 - COMO PUEDO CAPTURAR UN EVENTO DEL WORD DESDE DELPHI
Autor:  noelia Fernández
Necesito saber cuando es pulsado un botón del Word y entonces ejecutar un código en Delphi
  Respuesta:  Gabriel Pizarro
Para hacer esto PODRIAS usar lo que se denomina hooking, tendrias que establecer un hook para el mouse y el teclado, y en los procedimierntos Call Back de (Teclado y mouse)(que debe ser implementado en una dll en delphi), analizar si el handle es sobre la ventana (boton o lo que sea) que deseas,y dar nueva funcionalidad a esto.
Gabriel
Atravez de los Hook en general se puede capturar cualquier evento a cualquier ventana del sistema. Si te interesa, tengo por ahi algunos ejemplos

    Pregunta:  11718 - VARIAS LINEAS EN EL INPUTBOX
Autor:  Pedro Bonilla Burgos
En un InputBox quiero mostrar 2 líneas pero la 2º línea se me queda detrás de la caja de texto, como puedo hacer que se ajuste el inputbox (delphi 5).

vbuscar:= InputBox('Buscar por...','1. Titulo'+chr(13)+'2. Artista','');

Muchas Gracias
  Respuesta:  Daniel Serrano
Hola Pedro, el inputbox de Delphi no tiene otra manera de modificarse que ese, pero es mejor que tu mismo creen una ventana y lo trates como el inputbox, es decir: Creas un nuevo formulario el cual va a tener los mismos componentes que el inputbox tradicional :

1 label
1 edit
1 button

Luego creas uan funcion que retorne el valor ingresado en el campo de texto y haces que cada vez que se llame a la función que se cree el funcionario y luego al final que se destruya. Espero que te sirva de ayuda.

Saludos

    Pregunta:  11730 - COMO SABER CUANTAS HOJAS OCUPA CUALQUIER ARCHIVO
Autor:  Maria del Carmen Ontiveros
Hola! Necesito ayuda con esto por favor envienme algo relacionado con mi inquietud.
Estoy realizando una aplicación donde obtengo un archivo de cualquier directorio, necesito saber cuantas páginas ocupa ese archivo para mandarlo a imprimir.
  Respuesta:  Luis Fernandez
Bueno, como la anterior respuesta ha sido un poco pobre ahi te mando algo de código que he hecho. Analizalo y veras como te va bien. Yo lo he probado y funciona. Es un poco mas extendido de lo que necesitas pero pienso que asi es mejor. Si tienes dudas consultamelo sin problemas

Esta no tiene nada que ver con lo que pides pero es muy interesante
====================================================================
function CountLines(const Filename:String):Integer;
const
BufferSize=1024;
SearchByte=10;
var
FileHandle,BytesRead,Index:Integer;
Buffer:array[1..BufferSize] of byte;
begin
try
FileHandle:=FileOpen(Filename,fmOpenRead or fmShareDenyWrite);
BytesRead:=FileRead(FileHandle,Buffer[1],BufferSize);
if(BytesRead>0) then Result:=1 else Result:=0;
repeat
for index:=1 to Min(BufferSize,BytesRead) do
begin
if (Buffer[index]=SearchByte) then inc(Result);
end;//for
BytesRead:=FileRead(FileHandle,Buffer[1],BufferSize);
until (BytesRead<=0);
finally
fileclose(FileHandle);
end;
end;

================================================================================
Esta es por si quieres ponerle cabecera al escrito (¡¡¡con logo y todo!!!)

procedure TForm1.Cabecera(iMargenIzq, iMargenDer, iMargenSup, iPagina: Integer;
sTitulo: String);// logo: TBitmap);
var
X, Y: Integer;
Rect1: TRect;
begin
// Añade al título el número de página.
sTitulo := sTitulo + '. Página: ' + IntToStr(iPagina);
X := iMargenIzq;
Y := iMargenSup div 4;
// Dibuja el título de la página.
Printer.Canvas.TextOut(X, 3 * Y, sTitulo);
// dibuja el logotipo de la empresa.
X := Round(iMargenDer * 0.75);
Rect1 := Rect(X, Y, iMargenDer, 3 * Y);
//Printer.Canvas.StretchDraw(Rect1, logo);
// Dibuja una línea de separación.
Printer.Canvas.MoveTo(iMargenIzq, iMargenSup);
Printer.Canvas.Pen.Width := 2;
Printer.Canvas.LineTo(iMargenDer, iMargenSup);
end;

===============================================================
Esta es la que pides

procedure TForm1.SpeedButton2Click(Sender: TObject);
var
sTitulo: String;
iInterLinea: integer;
iNumLinea: integer;
iTotalLineas: integer;
x, y, i: integer;
iMargenIzq, iMargenDer, iMargenInf, iMargenSup : Integer;
begin
if PrintDialog1.Execute then
begin
try
Screen.Cursor := crHourGlass;
// Abre el fichero a imprimir.
// Inicia el trabajo de impresión.
Printer.BeginDoc;

// Imprime con el mismo tipo de fuente definida
// en el control TRichEdit.
// Debe tenerse en cuenta que si TRcihEdit es demasiado
// ancho no se imprimirá la línea completa.
Printer.Canvas.Font.name:=RichEdit1.Selattributes.name;
Printer.Canvas.Font.Size:=RichEdit1.SelAttributes.size;
Printer.Canvas.Font.color:=RichEdit1.SelAttributes.color;
Printer.Canvas.Font.style:=RichEdit1.SelAttributes.style;

// Calcula el espacio entre líneas.
iInterLinea := Printer.Canvas.TextHeight('A') + 10;

// Inicializa el aspecto del documento.
iMargenIzq := Printer.PageWidth div 5;
iMargenDer := Round(Printer.PageWidth * 0.95);
iMargenSup := iInterLinea * 4;
iMargenInf := Printer.PageHeight - iInterLinea * 2;
sTitulo := 'Hola';//FormMemo.Caption;

// Cálculo del total de líneas por página.
iTotalLineas := (iMargenInf - iMargenSup) div iInterLinea;

// Imprime la cabecera de página.
//Cabecera(iMargenIzq, iMargenDer, iMargenSup, Printer.PageNumber, sTitulo);//, logo);
iNumLinea := 1;
for i:= 0 to RichEdit1.Lines.Count -1 do
begin
// Imprime línea a línea.
Y := iNumLinea * iInterLinea + iMargenSup;
X := iMargenIzq;
//Printer.Canvas.TextOut(X,Y,RichEdit1.Lines[i]);
// Actualiza el número de línea. Si se alcanza
// el final de la página se abre una nueva.
Inc(iNumLinea);
If iNumLinea > iTotalLineas Then
begin
iNumLinea := 1;
Printer.NewPage;
Edit2.Text:=inttostr(Printer.PageNumber); //aqui te indica en numero de paginas
//Cabecera(iMargenIzq, iMargenDer, iMargenSup, Printer.PageNumber, sTitulo);//, logo);
end;
end;
// Cierra el trabajo de impresión.
Printer.Abort;
//Printer.EndDoc; //Si sequiere imprimir desactivar linea anterior
// y activar esta
except
Printer.Abort;
end;
end;
Screen.Cursor := crDefault;
end;
  Respuesta:  Luis Fernandez Fernandez
La solucion más rapida y sencilla es utilizar QuickReport y en vez de ejecutar Print, hacerlo con Preview. De esta forma ves en pantalla el informe con el numero total de paginas y si te interesa desde alli lo mandas imprimir.
Otra mas costosa es contar las lineas que tiene el fichero; por ejemplo cargado en un Memo; implementas una funcion que imprima X lineas por pagina y hallar las paginas es sencillo basta con dividir

    Pregunta:  11760 - GO <NRECNO> DE DBASE, EN DELPHI
Autor:  jorge medina
Hola.
Me gustaria saber si alguien conoce como implementar la intrucción \"GO TO\", usada en Clipper o Dbase para acceder a un numero determinado de registro de la tabla, con la misma eficiencia como lo hace los xBase.
Se recuerdan:
Use Tabla NEW
Go 3500

Esto mismo pero en Delphi.
yo he usado los Bookmark, pero antes se debe guardar
el puntero y no es lo que quiero.

Gracias amigos.
  Respuesta:  Gustavo OP
Hola Jorge
en delphi es mucho mas sencillo
table1.recno:=45
recorre al registro 45
que te parece mucho mejor que otros.
Chau.

    Pregunta:  11819 - COMO HACER UN ZOOM DE IMAGEN EN UN CONTROL IMAGE EN DELPHI
Autor:  Manuel Antonio Feria Lujan
Quiero saber como pudo hacer un zoom en un control IMAGE en delphi, lo que pasa es que quiero hacer un editor de imagenes tipo paint.
  Respuesta:  qdevelop2000
Te recomiendo que no utilices el control IMAGE para hacer lo que quieres. Debes usar el control TPaintBox para hacer lo que quieres y trabajar sobre su propiedad Canvas dónde puedes "dibujar" y "escribir" a tu gusto. El zoom lo debes emular tu a base de "Stretch" y "Tamaño de fuentes"

Si quieres un ejemplo te lo hacemos.

|<  <<  20 21 22 23 24 25 26 27 28 29 30  >>  >|