Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-04-2015
Isprago94 Isprago94 is offline
Registrado
NULL
 
Registrado: abr 2015
Posts: 2
Poder: 0
Isprago94 Va por buen camino
Post Detectar texto seleccionado en StringGrid

Bueno, soy muy novato en esto, de hecho solo llevo dos semanas programando en Delphi.

Mi duda es simple:

Tengo una aplicación con un StringGrid construido a través de un ADOQuery. La cosa es que en el se muestran nombres y telefonos.
Funciona todo perfectamente, pero estoy intentando meter un filtro y no puedo.

El Código que tengo es este:

Código Delphi [-]
procedure TForm33.StringGrid1KeyPress(Sender: TObject; var Key: Char);
begin
//Si la columna que vamos a editar es la 2, aplicamos filtro numerico.
if editingX=2 then
 if (not (Key in [#8, '0'..'9'])) OR (( length(StringGrid1.Cells[editingX,editingY]) = 10 )AND( not (Key in [#8]) ))  then begin
    // Ignoramos la tecla pulsada.
    Key := #0;
  end;
end;

Osea, en la columna de teléfonos solo puedo borrar o escribir números. Se ignora la tecla si no es un numero, o si la longitud del campo es la máxima y la tecla que se pulsa no es la de borrar.
Hasta ahora puedo:
-Escribir 10 numeros.
-Borrar los numeros en cualquier momento (Da igual la cantidad de números, 1 o 10).

Pero no puedo realizar lo siguiente:
-Reemplazar los numeros.

Es decir. Cuando selecciono la celda, automáticamente se selecciona todo el contenido (los diez números). Puedo borrarlos con la tecla borrar, pero si pulso otro número, al ya tener los 10 del total, no hace nada (ignora la pulsación). Mi intención es detectar la cantidad de caracteres seleccionados por el puntero del ratón al entrar en la celda.

Si la cantidad es 10, me permitirá que, al pulsar un número, se sobreescriban el resto, que es lo que no puedo hacer por ahora.

Un saludete.
Responder Con Cita
  #2  
Antiguo 08-04-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Isprago94, bienvenido a Club Delphi

Como ya es costumbre con los que se inician en estos foros te invitamos a leer nuestra guía de estilo.

En referencia a tu consulta y por lo que interpreto de la situación que comentas, se solucionaría usando las teclas de desplazamiento de cursor derecha o izquierda (si me equivoqué en la apreciación por favor hacemelo saber).

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 08-04-2015
Avatar de AgustinOrtu
[AgustinOrtu] AgustinOrtu is offline
Miembro Premium
NULL
 
Registrado: ago 2013
Ubicación: Argentina
Posts: 1.858
Poder: 15
AgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en brutoAgustinOrtu Es un diamante en bruto
A ver si esto te orienta

Código Delphi [-]
type
  // para acceder a la parte protegida del TStringGrid
  THackedStringGrid = class(TStringGrid)

  end;

  TForm3 = class(TForm)
    StringGrid1: TStringGrid;
    ...

Código Delphi [-]
procedure TForm3.Button1Click(Sender: TObject);
begin
    with THackedStringGrid(StringGrid1) do
        if (InplaceEditor <> NIL) then
            ShowMessage(InplaceEditor.SelText);
end;



Saludos
Responder Con Cita
  #4  
Antiguo 21-04-2015
Isprago94 Isprago94 is offline
Registrado
NULL
 
Registrado: abr 2015
Posts: 2
Poder: 0
Isprago94 Va por buen camino
Perfect, con eso tengo para empezar, muchas gracias.
Responder Con Cita
Respuesta



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
Detectar texto seleccionado dblx API de Windows 11 06-11-2014 21:22:43
obtener el texto seleccionado de un Treeview ingabraham Varios 3 24-06-2011 16:36:03
font style a texto seleccionado pabloloustau Varios 2 08-04-2010 17:22:56
Detectar el item seleccionado en RadioButton santiago14 Varios 1 23-02-2010 16:37:11
Texto Seleccionado en un DbRichEdit johurgi Varios 1 03-11-2006 12:38:17


La franja horaria es GMT +2. Ahora son las 12:04:52.


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
Copyright 1996-2007 Club Delphi