Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Siempre escribir en mayuscula en un grid (https://www.clubdelphi.com/foros/showthread.php?t=22448)

el_barto 15-06-2005 18:57:00

Siempre escribir en mayuscula en un grid
 
Buenos dias:

En una grid que propiedad hay que modificar para que siempre que escriban en la grilla escriban en mayuscula o hay que hacerlo con un FOR??

Gracias por su respuesta que tengan buen dia

roman 15-06-2005 19:02:26

El DBGrid no tiene una propiedad para esto. Hay maneras de lograrlo, aquí una de ellas.

Por cierto, ¿qué entiendes por usar un FOR para esto?

// Saludos

el_barto 15-06-2005 19:14:01

por ejemplo en c se toma la cadena de caracteres y mediante un for se compara el caracter y se convierte en mayuscula

quetzal 15-06-2005 19:15:28

mmmm

y si en el onkeydown u onkeypress

le poner algo asi no recuerdo bien
key:=upper(key);
o
key:=uppercase(key);


prueba

Suerte!!! :D

quetzal 15-06-2005 19:28:53

Perdon ya encontre una Pc con delphi

y pude constatarlo

procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
key:=upcase(key);
end;

creo que la ñ no la pone en mayuscula.
tu lo checas

Suerte!!! :D

quetzal 15-06-2005 19:38:02

bueno con un for podria ser asi

procedure TForm1.Button1Click(Sender: TObject);
var
x:byte;
cad:string;
begin
cad:=Edit1.Text;
Edit1.Clear;
for x:=0 to length(cad) do
begin
Edit1.Text:=Edit1.Text+uppercase(cad[x]);
end;
end;
o tambien Edit1.Text:=uppercase(Edit1.Text);

:D

el_barto 15-06-2005 23:08:08

Gracias amigos utilice el:

Cita:

procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
key:=upcase(key);
end;
Funciona correctamente la ñ si la toma en minuscula pero es mas de lo que podia pedir

roman 16-06-2005 00:09:15

Cita:

Empezado por el_barto
Funciona correctamente la ñ si la toma en minuscula pero es mas de lo que podia pedir

De hecho te fallará también con los acentos. Pero sí puedes pedir más :D
Usa la función AnsiUpperCase que pondrá las mayúsculas de acuerdo al juego de carcateres del sistema. Si éste es el español, entonces la ñ, diérecis, acentos y demás, serán convertidos correctamente.

// Saludos

el_barto 16-06-2005 15:02:56

pero con ansiuppercase saca un error que no comprendo:

Cita:

[Error] Unit4.pas(75): Incompatible types: 'Char' and 'String'

el_barto 16-06-2005 15:18:21

mm sera que como esto esta declarado en el evento KeyPress y este solo captura caracter a caracter y ansiuppercase transforma es cadena de caracteres se esta produciendo este error?? es posible

roman 16-06-2005 17:02:45

Simplemente "regrésalo" a caracter:

Código Delphi [-]
Key := AnsiUpperCase(Key)[1];

// Saludos

el_barto 16-06-2005 18:05:34

Probado y recontraprobado es correcta tu aclaracion gracias


La franja horaria es GMT +2. Ahora son las 01:56:18.

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