El ejercicio es muy sencillo, consistirá en hacer un pequeño programa que sea capaz de cargar un archivo de texto y decirnos cuantas lÃÂneas tiene, cuantas palabras hay en el texto y el número de letras que hay en el texto.
Necesitarás utilizar Borland Turbo Delphi 6 para seguir este ejemplo y compilar el proyecto. Y además tener ciertos conocimientos sobre algunos componentes y el lenguaje de programación, ya que no entraremos en detalle del uso de estos; sin embargo es muy intuitivo y no creo que sea muy difÃÂcil entenderlo.
Lo primero que haremos es dibujar la interfaz (la parte divertida) usaremos unos labels, tres cuadros de edición (TEdit), una barra de menú (TMainMenu), un OpenDialog y un cuadro de edición del tipo Memo (TMemo). Como la siguiente (La interfaz es al gusto del cliente):
Los nombres que dice en la imagen son los nombres de los componentes, corresponden a la propiedad NAME.
Ya que tenemos la interfaz, utilizaremos el evento Clic sobre el item "Abrir" de nuestro menú, (El menú que utilice tiene 2 opciones "Abrir y Cerrar"), para ello en modo de diseño daremos doble clic sobre el item y eso nos creará el código para evento y es aquàdonde deberemos realizar todo el proceso para la obtención de los datos que nos solicita el problema.
El código importante es este:
DELPHI:
-
//Estamos en el evento CLICK del Ite Abrir.
-
procedure TForm1.Abrir1Click(Sender: TObject);
-
var I: Integer;
-
var Texto:String;
-
var c:Integer;
-
-
begin
-
c:=1;
-
-
//Se abre el componente para poder buscar el archivo de texto.
-
if OpenDialog1.Execute then
-
-
//Cargamos el archivo en el Tmemo. Filename nos da la
-
//ubicación del archivo.
-
tm_Contenido.Lines.LoadFromFile(OpenDialog1.FileName);
-
-
//Extraemos el número de lineas que se cargaron.
-
//La propiedad TMemo.Lines.Count, nos dice el número de
-
//lÃÂneas que tiene el componente.
-
te_noLineas.Text:=IntToStr (tm_Contenido.Lines.Count);
-
Texto:=tm_Contenido.Text;
-
-
//Reemplazamos #13 (Retorno de Carro) y #10 (Final de LÃÂnea);
-
//con un espacio en blanco
-
Texto:=StringReplace(Texto,#13#10,' ',[rfReplaceAll]);
-
-
//Este for busca cuantos espacios en blanco hay, suponemos
-
//que entre cada espacio en blanco hay una palabra.
-
for I := 1 to Length(Texto) do
-
if pos(Texto[I],' ')>0 then
-
c:=c+1;
-
te_noPalabras.text:=IntToStr(c);
-
-
//Eliminamos los espacios en blanco. Al no poner caracter de
-
//reemplazo lo elimina. AsÃÂ obtenemos de todo el texto una
-
//sola cadena sin espacios y nos aprovechamos de la función
-
//Length para obtener el número de letras en la cadena.
-
Texto:= StringReplace(Texto,' ','',[rfReplaceAll]);
-
te_noLetras.Text:=IntToStr(Length(Texto));
-
end;
Y pues como verán es muy sencillo hacerlo, bueno la verdad es que para algunos (como yo) que estamos muy acostumbrados a otros lenguajes de programación es un poco complicado adaptarse a Delphi, sobre todo cuando tenemos ciertas cosas en la cabeza que ya pensamos como estándares, como la estructura del FOR o el WHILE; es cuestión de acostumbrarse.
Poco a poco iré poniendo detalles, la verdad es que apenas empiezo a programar en este lenguaje y estoy aprendiendo los trucos.
Solo me resta decir de Novato a Novato -Aprender es cuestión de decidirse: estudia, investiga, pregunta, no te lo fusiles nada más; sino aprendes de nada vale-
Página de Referencia:
http://www.delphibasics.co.uk/ - Muy completa acerca del lenguaje (en Ingles).
Archivos del Proyecto
Archivos Fuente y Ejecutable del proyecto
¿Te ha gustado este artÃculo? Subscribete vÃa Email, para ¡recibirlos en tu correo!
¿No encontró lo que buscaba? ¡Use el buscador!
Hola Que tal leei tu articulo esta muy practico ademas bastante expresivo con tus comentarios. La verdad soy nuevo en este lenguaje pero lo tengo que aprender ya que en la escuela se necesita y la escuela no lo enseña, espero ver mas de tus ejemplos; muchas veces las ideas uno las tiene pero de no saber como se escriben o como se estructuran te puedes pasar medio dia en eso y nunca veras la solucion sino hasta que te des cuenta que solo hacia falta una coma, un apostrofe, un punto y coma, jejeje
Bueno nos vemos y gracias por tu ejemplo, yo buscaba como contar los caracteres de un Edit y viendo el ejemplo de arriba me di cuenta como podia implementarlo y me salio.
Gracias, nos vemos luego
Veracruz, Mexico 9 enero 2008
Usando