Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 13-05-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Cita:
Empezado por Peri Ver Mensaje
Hola a toda la comunidad Delphi que hace posible este estupendo foro.
Antes que nada presentarme a todos. Soy Peri, un novato, pero que muy novato en este mundo. Llevo prácticamente dos semana intentando aprender este lenguaje, bueno en realidad los fines de semana de éstas.
Bienvenido.
Al igual que tu también soy novato pero a diferencia de ti llevo unos pocos años empleando Delphi.

Cita:
Empezado por Peri Ver Mensaje
Vengo del mundo Neobook, un programa RAD creado con delphi, y me han dicho de buena tinta que en este foro hay personas que también dieron el salto como yo. Esta es una de las causas por las cuales escribo. Sé hacer las cosas en Noebook y a veces quiero hacer lo mismo con delphi, comparándo ambos.
Disculpa, no he usado Neobook pero voy a hacer lo posible en ayudarte.

Cita:
Empezado por Peri Ver Mensaje
Neobook (NB) hace un uso excesivo de variables, cosa que en delphi no es necesario tanto, puesto que podemos consultar directamente los valores de las propiedades de algunos componentes.

Los que os habéis pasado de NB a delphi sabeis que se relaciona un TEdit con una variable para controlar dicho Tedit. En delphi podemos hacer lo mismo sin necesidad de variables, consultando la propiedad Text. Queriendo hacer lo mismo me gustaría que me confirmárais que lo que realmente hace NB es lo siguiente, este ejemplo está asociado a un botón para comprobar el comportamiento de la variable x:

[delphi] procedure TForm2.VerificarClick(Sender: TObject);
var
x: String;

begin
x:= Edit4.Text;
Showmessage (x);
end;

[/DEPHI]

Lo que he hecho es asociar la variable x al TEdit. ¿Es correcto, esto es lo que realmente hace Neobook?

Disculpa, ¿Por casualidad quisiste preguntar eso? ¿No habrás querido decir esto?:

Cita:
¿Lo que he hecho es asociar la variable x al TEdit?¿Es correcto? ¿Esto es lo que hace realmente Delphi?
Disculpame, pero me siento confundido porque preguntas por Neobook siendo que supuestamente estas aprendiendo Delpi.

Si estoy entiendo mal, por favor avisame.

Dejame explicar realmente lo que hace esa sentencia.
Formalmente, Edit4 es una instancia de una clase TEdit. Y cuando haces:

Código Delphi [-]
x := Edit4.Text

Le estás indicando a dicho objeto que te regrese el texto. ¿Que hace por dentro el objeto? Invoca a una función privada llamada GetText. Esta función lee una variable privada y hace algunas operaciones con punteros y termina regresando el contenido adaptado a nuestras necesidades. ¿Porqué eso? Porque internamente, en el fondo de la VCL, Text es una propiedad de tipo TCaption mientras que dicha variable es un puntero a caracteres (PChar). Por ello realiza ciertas "conversiones".

Bueno, entonces. ¿En que quedamos? Edit4 invoca dicho método GetText, este obtiene el valor y lo regresa.
En ningún momento, estamos asignando el objeto Edit4 a la variable x. Sino que estamos copiando el contenido de dicha propiedad.

Extrictamente hablando, la palabras asociar indicaría una asociación de punteros. Y aquí, a pesar de que internamente se operó con punteros, en ningún momento se asignó un puntero hacia la propiedad Text ni al objeto Edit4. Sólo lo que conseguimos fue copiar.
Por tanto, el hacer esto:
Código Delphi [-]
Edit4.Free;
Que es liberarlo, destruirlo, no deja inconsistente a x. Léase bien, por favor: nota que dije NO y no NOS.
En este punto, ahora que el objeto ha sido destruido cualquier invocación a él arrojará un error.
Como consejo: No hagas Free a un Botton, un Edit.

Creo que la ayuda, a pesar de estar en inglés, lo explica mejor que yo.
Muy seguramente se me están pasando algunas cosas y también otros compañeros lo explicarán mejor que yo.

Yo sólo quise hacerte esa pequeña observación ya que hablas de asociar. Hay casos en que si, asociamos... en otros no (Este es uno).

No se si me explico y esto es de ayuda para que comprendieras. Repito nuevamente, si he entendido mal tus palabras dimelo.

Saludos y que Delphi te sea de agrado.
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Que esta pasando eduarcol La Taberna 7 12-12-2007 23:30:50
Ayuda pasando condigo VB a Delphi javier7ar Varios 5 05-12-2007 15:23:20
Plugins para neoBook chico_bds Varios 1 23-03-2007 06:17:40
Problemas pasando una variable cirilungol HTML, Javascript y otros 3 17-09-2006 01:42:07
problemas selectSQL-Like, pasando datos desde código en el delphi Giniromero SQL 6 22-09-2003 17:49:49


La franja horaria es GMT +2. Ahora son las 04:55:44.


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