Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Noticias (https://www.clubdelphi.com/foros/forumdisplay.php?f=34)
-   -   Delphi 10.3 Rio Liberado! (https://www.clubdelphi.com/foros/showthread.php?t=93581)

Al González 17-12-2018 02:24:30

Cita:

Empezado por gatosoft (Mensaje 529675)
[...]Imagino a Al Gonzalez a la espera de que su propuesta de mejorar el WITH sea acogida[...]

Con las variables in-line, nos encaminamos a una políticamente sana extinción del With:

Código Delphi [-]
  // ...
  Var OKButton := GetMySpecialForm.FindComponent ('btnOK');

  If OKButton <> Nil Then
  Begin
    TButton (OKButton).Click;
    OKButton.Enabled := System.False;
  End;
End;

En todo caso, podríamos incluir una nueva palabra reservada de uso similar (pero seguro) al del With, como por ejemplo Using:

Código Delphi [-]
  // ...
  Using GetMySpecialForm.FindComponent ('btnOK') Do
    If It <> Nil Then  // "It", variable implícita y de uso obligado dentro del bloque Using.
    Begin
      TButton (It).Click;
      It.Enabled := System.False;
    End;
End;

Un abrazo propuesto. :)

Al González.

gatosoft 17-12-2018 13:47:55

Cita:

Empezado por Al González (Mensaje 530005)
Con las variables in-line, nos encaminamos a una políticamente sana extinción del With:

Código Delphi [-]
  // ...
  Var OKButton := GetMySpecialForm.FindComponent ('btnOK');

  If OKButton <> Nil Then
  Begin
    TButton (OKButton).Click;
    OKButton.Enabled := System.False;
  End;
End;

En todo caso, podríamos incluir una nueva palabra reservada de uso similar (pero seguro) al del With, como por ejemplo Using:

Código Delphi [-]
  // ...
  Using GetMySpecialForm.FindComponent ('btnOK') Do
    If It <> Nil Then  // "It", variable implícita y de uso obligado dentro del bloque Using.
    Begin
      TButton (It).Click;
      It.Enabled := System.False;
    End;
End;

Un abrazo propuesto. :)

Al González.

De acuerdo con esta, una variante mejorada (creo yo) al "Ditto mark" que proponias en otros foros...

Ñuño Martínez 19-12-2018 14:01:33

Con esto de las variables in-line y el WIDTH me estoy acordando de algo que acabo de descubrir (bueno, hace un par de semanas tal vez): la palabra clave "ABSOLUTE", la cual permite declarar una variable que comparte espacio físico con otra. Por no conocerla antes he tenido que hacer malabares con Allegro.pas con algunas cosas; sobre todo porque Allegro, al ser de bastante bajo nivel, tiende a usar los mismos datos de formas diferentes según lo que esté haciendo.

No sé desde qué versión existe, tengo que investigarlo, pero como parece funcionar exactamente igual tanto en Delphi como en Free Pascal me va a solucionar la vida en alguna cosa. Sólo espero que lleve en el lenguaje desde hace tiempo por lo de la retrocompatibilidad y tal.

Casimiro Notevi 19-12-2018 14:12:08

Cita:

Empezado por Ñuño Martínez (Mensaje 530042)
la palabra clave "ABSOLUTE", la cual permite declarar una variable que comparte espacio físico con otra.

¿Un puntero a la misma?

darkerbyte 19-12-2018 21:42:46

Comunity Edition
 
Hola.

¿Alguien sabe si la version comunity permite hacer Apps? ¿o viene muy limitada?

Vi que solo hasta la licencia Enterprise permite el desarollo de Apps con conexión a BD. Pero creo que mi presupuesto solo llega a la versión Profesional :(
¿Hay manera de hacerlo en la versión profesional? ¿quizá con componentes de terceros?

Gracias y ¡Te deseo un año 2019 de muchos éxitos!

Neftali [Germán.Estévez] 19-12-2018 22:23:30

Cita:

Empezado por darkerbyte (Mensaje 530062)
¿Alguien sabe si la version comunity permite hacer Apps? ¿o viene muy limitada?
Vi que solo hasta la licencia Enterprise permite el desarollo de Apps con conexión a BD. Pero creo que mi presupuesto solo llega a la versión Profesional :(
¿Hay manera de hacerlo en la versión profesional? ¿quizá con componentes de terceros?
Gracias y ¡Te deseo un año 2019 de muchos éxitos!


Creo que este hilo, especial de la versión community, te puede aclarar muchas cosas.

darkerbyte 19-12-2018 23:06:48

Agradecimiento
 
Cita:

Empezado por Neftali [Germán.Estévez] (Mensaje 530063)
Creo que este hilo, especial de la versión community, te puede aclarar muchas cosas.

Muchas gracias. Dudas despejadas

Al González 20-12-2018 00:20:54

Cita:

Empezado por Ñuño Martínez (Mensaje 530042)
Con esto de las variables in-line y el WIDTH me estoy acordando de algo que acabo de descubrir (bueno, hace un par de semanas tal vez): la palabra clave "ABSOLUTE", la cual permite declarar una variable que comparte espacio físico con otra...No sé desde qué versión existe, tengo que investigarlo, pero como parece funcionar exactamente igual tanto en Delphi como en Free Pascal me va a solucionar la vida en alguna cosa. Sólo espero que lleve en el lenguaje desde hace tiempo...

Existe desde Turbo Pascal, y la uso desde entonces. El ejemplo más inmediato que tengo es la imagen de código en mi perfil de Twitter. :)

Saludos absolutos.

Ñuño Martínez 20-12-2018 11:32:49

Cita:

Empezado por Casimiro Notevi (Mensaje 530045)
¿Un puntero a la misma?

No exactamente. Es más parecido a los "union". Por ejemplo:

Código Delphi [-]
VAR
  UnaLista: ARRAY [1..10] OF BYTE;
  LngLista: BYTE ABSOLUTE UnValor;

En este caso, al compartir "LngLista" la dirección física con "UnaLista", LngLista "contiene" el número de elementos de UnaLista. Sin embargo no es un puntero ya que no puede cambiarse su dirección, así que el código generado es de acceso directo y no una indirección que es lo que generan los punteros.

Hay que tener en cuenta que es un poco peligroso, (aquí sí se parece a los punteros) ya que pueden asignarse valores o permitir el acceso a áreas de memoria:

Código Delphi [-]
VAR
  UnValor, OtroValor, TercerValor, YMas, YTal: INTEGER;

  PROCEDURE Blabla;
  VAR
    MemoriaComprometida: ARRAY [1..4] OF INTEGER ABSOLUTE UnValor;
  BEGIN
   ...
  END;

Pero es útil, sobre todo en operaciones de bajo nivel. Así, en Allegro facilitaría mucho trabajo al poder acceder a la información de (por ejemplo) una imagen no sólo como una lista de octetos (BYTE) sino también de enteros de 32bit.

Nota: Todavía no lo he usado y hablo de lo que he leído, así que puede que no funcione exactamente así. Hay que investigar un poco.
Cita:

Empezado por Al González (Mensaje 530068)
Existe desde Turbo Pascal, y la uso desde entonces. El ejemplo más inmediato que tengo es la imagen de código en mi perfil de Twitter. :)

Saludos absolutos.

Gracias por la información. :)

WHILENOTEOF 21-12-2018 13:16:26

Cita:

Empezado por Al González (Mensaje 530068)
Existe desde Turbo Pascal, y la uso desde entonces. El ejemplo más inmediato que tengo es la imagen de código en mi perfil de Twitter. :)

Saludos absolutos.

En efecto, yo supe de ella a raíz de un podcast que te hicieron los compañeros de NoSoloDelphi, desde entonces la utilizo en mi código.

gmontes 24-12-2018 02:36:18

saludos

cambiando un poco el tema, tienen el precio para méxico?

:D

Al González 24-12-2018 21:39:29

Cita:

Empezado por WHILENOTEOF (Mensaje 530117)
En efecto, yo supe de ella a raíz de un podcast que te hicieron los compañeros de NoSoloDelphi, desde entonces la utilizo en mi código.

¡Qué bien, gracias! :p ^\||/

REHome 30-12-2018 06:28:58

Hola:

Si desinstalo el 10.2 Tokio para instalar 10.3 Rio. ¿Tendré problemas al instalar el nuevo?

La que me armó en su día al instalar el 10.1 al 10.2, estaba todo el rato borrando en el editor de registro durante por lo menos una hora todo lo que diga Delphi, embarcadero y demás, para que me dejara instalarlo sin tener que re instalar windows desde cero, menudo martirio.

Saludos.


La franja horaria es GMT +2. Ahora son las 11:39:27.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi