 |
Número III
|
| Revista
gratuita sobre Delphi, Kylix, pascal y similares |
11 Junio 2001 |

http://www.delphiheaven.com
http://es.egroups.com/group/revistadh
webmaster@...
Volver al índice
Introducción del Editor
-Bueno, después de tanto tiempo desde el segundo número, sale a la luz
este tercer número de Revista DH; espero tener más tiempo y que las
colaboraciones empiecen un poco. Habréis visto que he abandonado el
formato PDF, apostando por html. Esto es debido a la mayor difusión y
compatibilidad del html, ya que se ve con cualquier explorador, y por el menor
tamaño que ocupa.
En este número encontraréis las últimas noticias sobre el nacimiento de
DH Soft, un artículo sobre Lazarus, la 3ª entrega del Curso sobre Delphi, y
las secciones habituales.
Os recuerdo que podéis invitar a la gente que conozcáis a que se
suscriban, distribuir la revista por donde queráis, etc.
Quisiera agradecer su colaboración a Carlos Méndez, autor del artículo
sobre Lazarus, y uno de los fundadores/coordinadores de DH Soft.
Que disfrutéis este número y hasta el 4. Salu2.
Jose Antonio Olivares Jiménez. webmaster@...
Volver al índice
Actualidad
Kylix a la venta, y rebajado
-Después de una larga espera Borland presenta el Kylix, este RAD único y
revolucionario para Linux. Tras empezar con un precio de 999$, tras unas semanas
el precio se ha rebajado a 200$. En España lo podemos comprar en DanySoft por
39900 pesetas (versión Desktop). La web es http://www.danyshop.com
Delphi 6
-La famosa casa Borland ya tiene listo el Delphi 6, tras dos años
programando con Delphi 5 dentro de poco podremos disfrutar de las ventajas
de la nueva versión. Su precio (para la actualización) es de 285$. De momento
se puede reservar. Más información en http://www.borland.com/delphi/
Volver al índice
DH Soft en el punto de la salida
-Antes de nada, intentaré explicaros que es DH Soft y con qué fin. Hace
tiempo,junto con César Méndez de Mexico, pensamos en crear un proyecto para
desarrollar software en Delphi. Después de un período de inactividad, de nuevo
nos reunimos para crear este proyecto. Se trata de un "nombre" o
"plataforma" sobre la que hacer programas de código abierto (Open
Source) realizados en Delphi, Kylix, pascal, freepascal, etc. Se trataría de un
grupo de programadores, estructurados en grupos, cada grupo realizaría un
proyecto (es decir, un programa), y dicho grupo estaría compuesto por
administradores/programadores y programadores. Para organizar todo esto, ofrecer
apoyo publicitario y de medios estaríamos los dos coordinadores/fundadores
(César Méndez y yo), ofreciendo total soporte a Dh Soft, tanto en Delphi
Heaven, como en Revista DH, etc.
Alguno se puede preguntar ¿qué hace falta para entrar en DH Soft?, pues
simplemente escribir a uno de los dos coordinadores (linuxtux@...,
webmaster@...) y ya
nos ponemos al habla , así de simple.
La licencia escogida para lanzar los programas sería la BSD, un tipo de
licencia en la que se distribuye el programa junto con su código fuente, y se
permite su modificación, pero siempre manteniendo los créditos del original.
Pues nada, ya sabéis, si os interesa, no tenéis más que poneros en
contacto con alguno de nosotros. Un saludo.
Jose Antonio Olivares Jiménez. webmaster@...
Volver al índice
Curso de Delphi (III): Parámetros
-En esta tercera entrega del Curso de Delphi os presento lo necesario para
que vuestro programa acepte parámetros a través de la línea de comandos (p.ej.
miprog.exe -a -v).
La línea de comandos ha sido siempre muy utilizada en la programación,
sobre todo en la clásica programación en Ms-Dos, ya que las interfaces eran
más bien escasas, y eran mayoría los programas que recibían parámetros a
través de la línea de comandos. Un ejemplo claro de esto, aún vigente hoy, es
el caso de pkunzip, arj,etc.
En windows los parámetros en la línea de comandos son muy utilizados en la
asociación de ficheros; es decir, si haces un programa y le asocias un tipo de
archivo (por ej. haces un editor de texto y le asocias .txt), cuando haces doble
click sobre un fichero .txt, tu programa recibe en la línea de comandos un
párametro que es el nombre del fichero entrante.
Veamos esto en Delphi: el comando en cuestión es paramstr, y su sintaxis es:
- function ParamStr(Index: Integer): string;
En esta función encontramos Index que es el número de parámetro.
Valores de Index:
0: Nombre del program (miprog.ex)
1: párametro 1
2: párametro 2
etc.
Como habéis visto es tan sencillo como leer esta función, que nos
devolverá una cadena que es el parámetro enviado. Otra función relacionada es
ParamCount, y su sintaxis es:
- function ParamCount: Integer;
Esta función simplemente devuelve el número de parámetros que el programa
recibe en la línea de comandos.
Para probar todo esto, vamos a crear un fácil ejemplo (para los que no
tengáis ganas de teclear, el ejemplo viene adjunto).
- Abrimos Delphi. Seleccionamos File-New Application
- Hacemos doble click en el formulario.
- Modificamos con el siguiente código
procedure TForm1.FormCreate(Sender: TObject);
var
i: Integer;
begin
for i := 0 to ParamCount do ShowMessage(paramstr(i));
end;
- Le damos a CTRL+F9 (para compilar)
- Hacemos click en Run-Parameters...
- Escribimos: uno dos
- Le damos a F9 (para ejecutar)
Como veréis, nos devuelve el nombre del programa en el 0, y el resto en 1,
2, etc. Pues nada, aunque muchos de vosotros seguramente ya sabíais esto,
posiblemente a más de uno le habrá venido bien. Hasta la cuarta entrega, un
saludo:
Jose Antonio Olivares Jiménez. webmaster@...
Volver al índice
Lazarus: proyecto Delphi sin fronteras
Titulé
así el presente articulo, ya que fue lo primero que
me vino a la mente cuando supe de la existencia del Proyecto
Lazarus, al igual que usted que lee estas líneas, yo también
estoy interesado en todo lo relacionado con Delphi.
El
proyecto Lazarus, es un conjunto de librerias de clase para
FreePascal, que emulan a Delphi, cabe comentar que este compilador
se encuentra bajo licencia GPL y para plataformas distintas a
Windows (Linux, OS/2, 68k), asi también puede entender y
compilar la sintaxis de Delphi.

Otro aspecto que resulta
interesante, es que Lazarus sera API-Independiente, por lo que
podremos usar el "Api Widget set" que prefieras
(conjunto de botones y aspecto), actualmente se esta utilizando
por default GTK (Gimp Tools Kit), pero puedes enlazarlo a otro
como el Gnome-compliant; teniendo Lazarus soporte para Gnome y KDE.

Recordemos
que el proyecto Kylix solo tiene disponible una version que
podemos obtener de forma gratuita, en la que no podemos ver el
codigo (Open Source), pero Lazarus viene a darnos otra
alternativa para desarrollar proyectos compatibles con Delphi, y
entrando a la filosofia de GNU/Linux. Lazarus podra entender el
codigo de un proyecto con la VCL estandard, no pudiendo
interpretar las llamadas al API Win.
Cabe
mencionar que este proyecto se encuentra en fase de desarrollo,
para lograr un IDE funcional, por lo que no podemos disfrutar
todavía programando en el, aunque los que no han programado
en freepascal, pueden comenzar a hacer sus pininos (si entiendes
la sintaxis de Pascal, ya programas en FreePascal), y asi poder
desarrollar nuestros proyectos para otras plataformas, no teniendo
fronteras.

Para aquellos desarrolladores que esten interesados
en aportar sus conocimientos a este proyecto, y asi poder agilizar
su desarrollo, les aconsejo que visiten las siguientes
direcciones.
Fuentes:
www.lazarus.freepascal.org
www.freepascal.org
César Méndez linuxtux@...
Volver al índice
El código: Copiar y pegar Bitmaps del / al portapapeles
-En este ejemplo os muestro como de una manera muy sencilla se pueden copiar
y pegar imágenes al portapapeles o desde él. El ejemplo viene adjunto.
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls, ExtDlgs, Clipbrd;
type
TForm1 = class(TForm)
Image1: TImage;
Button1: TButton;
Button2: TButton;
Button3: TButton;
abre: TOpenPictureDialog;
Image2: TImage;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.Button1Click(Sender: TObject);
begin
if abre.Execute then image1.Picture.LoadFromFile(abre.filename);
end;
procedure TForm1.Button2Click(Sender: TObject);
var
Formato : Word;
Datos: THandle;
Paleta: HPALETTE;
Bitmap: TBitmap;
begin
// Guardamos el bitmap en memoria con un formato y una paleta
image1.picture.Bitmap.SaveToClipBoardFormat(formato , Datos, Paleta);
// Asignamos dicha zona de memoria al portapapeles
ClipBoard.SetAsHandle(Formato, Datos);
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
With image2.picture do Begin
// Cargamos la imagen del portapapeles en el Bitmap de Image2
Bitmap.LoadFromClipBoardFormat(cf_BitMap,ClipBoard.GetAsHandle(cf_Bitmap),0);
// Y lo dibujamos mediante canvas
image2.Canvas.draw(0,0,Bitmap);
End;
end;
end.
Jose Antonio Olivares Jiménez. webmaster@...
Volver al índice
El componente: Component Creator
-En este número no os voy a presentar un componente, sino un creador de
componentes, el más útil que he encontrado, y además, !gratis!. Por su
tamaño (800 kb) no lo puedo inculir con la revista, pero al final de este
artículo os doy la url.
Bueno, como su nombre indica, es un creador de componentes, muy fácil
de usar y sin fallos. En una primera ventana tenemos un menú para crear,
guardar o cargar "Component Definition", es decir el fichero con las
especificaciones del componente, a través de las cuales creamos el .pas.

Una vez hacemos click en "New component definition" seleccionamos
el tipo de control del cual se deriva nuestro componente. Si no es ninguno de
ellos, podemos seleccionar Tcomponent.

Por último, se nos presenta el último paso, en el que definiremos los
métodos, propiedades, funciones y eventos que poseerá nuestro componente, todo
de una forma sencilla.
Una vez definido todo, en "Generate-Component Code" (CTRL+F9) nos
genera un listado de nuestro fichero .pas listo para ser compilado.
Os recomiendo este creador, ya que, funciona bien, y nos ahorrará escribir
un montón de código y olvidarnos de las sentencias cada vez que queremos
escribir un componente. Lo podéis obtener en:
http://www.compcreate.com
Jose Antonio Olivares Jiménez. webmaster@...
Volver al índice
Delphi en Internet
-Aquí tenéis las URLs que os presento este número.
www.danyshop.com
Aquí se puede comprar el Kylix por 200$
http://www.gdsoft.com/swag/
Hace tiempo que no se actualiza, pero es quizás el mayor recopilatorio de
código fuente en Pascal y algo de Delphi existente. Se llaman los SWAG.
http://www.efg2.com/Lab/Library/Delphi/Pillars/
¿Queréis links sobre Delphi? Echad un vistazo a esta web.
Volver al índice
Sobre Revista DH
Suscribirse
a la revista: revistadh-subscribe@es.egroups.com
Cancelar
la suscripción: revistadh-unsubscribe@es.egroups.com
-Es muy
importante la difusión a través de todos vosotros, por lo que para que esta
revista llegue a más gente podéis difundirla a amigos, compañeros,etc.
-Si tienes web,
puedes incluir un formulario para que la gente se suscriba a la revista. El código
es:
<center>
<a href=”http://es.egroups.com/join/revistadh”>
<img src=”http://jalff.combios.es/delphih/revistadh.gif” border=0><br>
Haga clic para subscribirse a Revista DH</a>
</center>
Recordad que
siempre podéis colaborar, no importa que el nivel sea alto o bajo, lo
interesante es compartir los conocimientos sobre Delphi, Kylix, pascal, etc. Así
que, no lo dudes y si quieres escribir en algún número de Revista DH, manda un
e-mail a webmaster@...
y hablamos.
En http://es.egroups.com/group/revistadh
encontraréis la revista en la sección “Documentos” y las fechas de salida
de cada número en “Calendario”. También encontraréis información en la
web base de Revista DH, Delphi Heaven, http://www.delphiheaven.com
|