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 28-06-2011
Avatar de DarkBlue
DarkBlue DarkBlue is offline
Miembro
 
Registrado: jun 2010
Posts: 105
Poder: 14
DarkBlue Va por buen camino
Bug con popupmenu y stringgrid

hola, muchas gracias por tu atencion.Mi problema es el siguiente:

He creado un popupmenu con 3 elementos en la lista,en lugar de complicarme la vida y crear un combobox dentro del stringgrid. ya logro que el texto del elemento seleccionado del pop up menu se inserte en la celda correspondiente pero el popupmenu me aparece otra ves una ves que lo seleccione,hasta la segunda ves que selecciono la opción me pone el texto seleccionado en la celda o cuando selecciono otra cosa desaparece.

como puedo hacer que el pop up menu desaparesca en la primera seleccion aqui esta mi codigo
Código Delphi [-]

procedure Tfcotizacion.StringGrid1Enter(Sender: TObject);
begin
stringgrid1.Col:=4;
end;

procedure Tfcotizacion.StringGrid1SelectCell(Sender: TObject; ACol,
  ARow: Integer; var CanSelect: Boolean);

begin


if (ACol = StringGrid1.FixedCols) then
   CanSelect:= False;


  if   (col=0) or ((col=1) and (row =0)) or ((col=2) and (row =0))  or ((col=3) and (row =0)) then
    CanSelect:= False;

//esto me sirve para indicar que celdas no pueden ser seleccionadas


    insert('#',mascara,1);

 end;

end;
procedure Tfcotizacion.StringGrid1GetEditMask(Sender: TObject; ACol,
  ARow: Integer; var Value: String);

begin


if (ACol = 2) or (ACol = 3) then value:=mascara else
Value := EmptyStr; //le pongo mascara de entrada las columnas 2 y3
end;

procedure Tfcotizacion.Remplazar1Click(Sender: TObject);
var cap:string;
begin
//esta es la accion del clcik del primer elemento del popup menu
 cap:= popupmenu1.Items.Items[0].Caption; 
 stringgrid1.Cells[fcotizacion.col,row]:=cap;//aqui le pongo el caption a la celda
 

end;

procedure Tfcotizacion.StringGrid1GetEditText(Sender: TObject; ACol,
  ARow: Integer; var Value: String);
var p:tpoint;
  begin
//aqui llamo al popup menu si se selecciono en la columna 0
if   (acol=1) then
   begin
    getcursorpos(p);
    popupmenu1.Popup(p.X,p.Y);
    row:=arow; //guardo en que fila y columna se selecciono
    col:=acol;

    end;
end;


Muchas gracias por su ayuda, espero me puedan ayudar =)
__________________
Todo es Relativo
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
Problema con Popupmenu angelp4492 Varios 2 27-12-2010 17:53:01
PopupMenu !!! Ledian_Fdez OOP 6 08-11-2010 23:12:54
PopupMenu cmfab Varios 1 01-11-2010 23:00:18
El PopupMenu skinnerpro OOP 4 16-10-2007 01:47:30
popupMenu jorodgar Varios 7 20-04-2005 17:16:22


La franja horaria es GMT +2. Ahora son las 12:30:15.


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