Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Pasar contenido de Memo a mayúsculas (https://www.clubdelphi.com/foros/showthread.php?t=63448)

Abuelo7 14-02-2009 12:24:17

Pasar contenido de Memo a mayúsculas
 
Hola a todos.

Tengo hecho un procedimiento para pasar texto a mayúsculas por medio de Uppercase.
Como puedo aplicarlo para que me pase a mayúsculas todo el contenido que vaya apareciendo en un Memo?
Gracias de antemano.

Saludos

Manuel

dec 14-02-2009 13:04:09

Hola,

Igual te vale con usar la propiedad "CharCase" del "TMemo". Prueba a darle un valor "ecUpperCase".

Abuelo7 14-02-2009 13:33:59

Pasar contenido de Memo a mayúsculas
 
Hola Dec.

Gracias, pero en el TMemo no me aparece esa propiedad.

De todas formas agradecido por tu atención

Saludos

Manuel

dec 14-02-2009 13:53:01

Hola,

Al menos en Delphi 2009 sí que está presente esa propiedad en el "TMemo". De todas formas, esa propiedad tiene su implementación en la clase "TCustomEdit", de la que hereda también el "TMemo". Quiere decirse, que, podrías usar una clase interpuesta sólo para publicar dicha propiedad. Para esto último, en la misma unidad o formulario donde estás usando el "TMemo" en cuestión, podrías añadir lo siguiente, justo antes de la declaración del tipo del formulario:

Código Delphi [-]
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes,
  Graphics, Controls, Forms, Dialogs, StdCtrls;

type
  TMemo = class(StdCtrls.TMemo)
  public
    property CharCase;
  end;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

end.

Si no ves necesario complicarte más la vida, en el propio evento "OnCreate" de dicho formulario, podrías hacer uso de la propiedad "CharCase", ya disponible en el "TMemo".

marcoszorrilla 14-02-2009 13:56:43

Prueba.

Código Delphi [-]
memo1.Text:=UpperCase(memo1.Text);

Un Saludo.

dec 14-02-2009 13:57:08

Hola,

Por otro lado (es que depende de cómo se piense usar el "TMemo") algo como esto igual también podría servirte:

Código Delphi [-]
procedure TForm1.Memo1Change(Sender: TObject);
begin
  Memo1.Text := AnsiUpperCase(Memo1.Text);
  Memo1.SelStart := Length(Memo1.Text);
end;

PD. Algo parecido a lo que te dice Marcos, salvo que aquí se usa el evento "OnChange" del "TMemo", como puede verse.

Abuelo7 15-02-2009 12:13:16

Gracias a todos.
Lo he hecho tal como dice Dec y la cosa a funcionado.

Muchas gracias a todos

Saludos cordiales amigos.

Manuel


La franja horaria es GMT +2. Ahora son las 12:58:21.

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