Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > OOP
Register FAQ Members List Calendar Guía de estilo Today's Posts

Coloboración Paypal con ClubDelphi

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 17/05/2012
ramonibk ramonibk is offline
Miembro
 
Join Date: May 2004
Posts: 193
Poder: 23
ramonibk Va por buen camino
Problema con StringGrid y ComboBox en fsMDIChild

Buenos dias.

el problema que hoy os planteo es el siguiente.

tengo un form con un StringGrid y un ComboBox. en el evento DrawCell inserto el codigo.
Código Delphi [-]
var
 R: TRect;
begin

 if (gdSelected in State)and(ACol=1) Then
   with ComboBox1 do
    begin
     ComboBox1.Visible := True;
     ComboBox1.ItemIndex := -1;
     BringToFront;
     CopyRect(R, Rect);
     R.TopLeft :=     Form1.ScreenToClient(StringGrid1.ClientToScreen(R.TopLeft));
     R.BottomRight := Form1.ScreenToClient(StringGrid1.ClientToScreen(R.BottomRight));
     SetBounds(R.Left, R.Top, R.Right-R.Left, R.Bottom-R.Top);
     ComboBox1.SetFocus;
    end;
 if ACol <> 1 Then
  Begin
   ComboBox1.Visible := False;
  end;
Con lo que consigo que cuando me posicione en la celda definida en mi caso las que corresponden a la columna 1.

esto funciona correctamente hasta.........................................

he echo que mi Form sea del tipo fsMDIChild mientras que el form se crea en el inicio de la aplicación todo bien pero se el form se crea a posterior a trabes de un botón.
Código Delphi [-]
TForm1.Create(Self)
hay es donde empiezan los problemas.
ACCESO VIOLATION

Y ya no se por donde meterle mano al tema.
agradecería ayuda.
Reply With Quote
  #2  
Old 17/05/2012
afxe afxe is offline
Miembro
 
Join Date: Jul 2004
Location: Malaga-España
Posts: 295
Poder: 23
afxe Va por buen camino
El problema que tienes es que "Form1" no existe... podrías hacer Form1 := TForm1.Create(Self); y se te quitaría el problema, pero comentas que estás en entorno MDI, lo cual quiere decir que existe la posibilidad de varias instancias del objeto TForm1 a la vez, así que es mala idea que uses "Form1" dentro del evento OnDrawCell. Yo particularmente lo cambiaría por "Self.":
Código Delphi [-]
     R.TopLeft :=     Self.ScreenToClient(StringGrid1.ClientToScreen(R.TopLeft));
     R.BottomRight := Self.ScreenToClient(StringGrid1.ClientToScreen(R.BottomRight));

Nunca te acostarás sin saber una cosa más, así que si esto te ha ayudado... ala, a dormir.
__________________
Amar al mundo apasionadamente.
Reply With Quote
  #3  
Old 17/05/2012
ramonibk ramonibk is offline
Miembro
 
Join Date: May 2004
Posts: 193
Poder: 23
ramonibk Va por buen camino
Muchas gracias Afxe efectivamente ese era el pronblema.
Ya hoy puedo dormir jejejejeje

De todas maneras es lo que tiene los que aprendemos a "pogramar" a base de tecla que cometemos los fallos mas simples.

De nuevo gracias y un saludo.
Reply With Quote
Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Tener un columna de ComboBox en un stringGrid rgstuamigo OOP 8 23/12/2008 22:14
Stringgrid + combobox ayuda porfavor serebi Varios 2 21/12/2006 18:00
StringGrid con ComboBox vivamotos C++ Builder 3 25/09/2006 17:14
problemas con los fsMDIChild... Er_Manué Varios 3 02/05/2006 17:00
stringgrid y combobox didier Varios 0 07/07/2005 19:34


All times are GMT +2. The time now is 14:02.


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