Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-04-2008
bochan bochan is offline
Miembro
 
Registrado: abr 2008
Posts: 11
Poder: 0
bochan Va por buen camino
Hola de nuevo!

Estoy creando los frames de forma dinamica como me explicaste pero me da errores en ejecucion ("Violation Access"). Basicamente lo que hago es esto:
La clase Frame padre tiene un constructor de esta forma;
Código:
TFrame:TFrame (TComponent){"Aqui no hay nada"}
A la hora de crear los frames hago un bucle asi:
Código:
for (int i=0;i<NumCasillas;i++)
 for (int j=0;i<NumCasillas;j++)
{
 TFrame *aux= new TFrame("Aqui no estoy muy seguro de que pasarle");
 casillas[i][j]= aux;
 casillas[i][j]->Name="X";
 casillas[i][j]->Legth="100";
 ......
aux=null;
 }
La variable casillas es una matriz de punteros a los frames, ya que sino perdemos las referencias con estos frames.
Bueno el tema esta en que cuando hago casilla[i][j]->Name="X"; Me da error de memoria... si pongo aux->Name="X" antes de ponerlo a Null tambien me da error.
Alguna idea??
Ah tambien necesito de una clase que tenga implementada una cola.Hay alguna standar que la tenga???

Saludos
Responder Con Cita
  #2  
Antiguo 13-04-2008
bochan bochan is offline
Miembro
 
Registrado: abr 2008
Posts: 11
Poder: 0
bochan Va por buen camino
Alguna ayuda por favorrrrr
Responder Con Cita
  #3  
Antiguo 14-04-2008
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 31
Lepe Va por buen camino
Yo en C y C++ no me aventuro a decir nada, sé que hay gente del foro que maneja C, será mejor esperar por ellos.

Colas, bueno si no recuerdo mal: TStack, Tqueue, TObjectLis (esto es como un array dinámico), revisa la ayuda, allí te puede dar más resultados relacionados.

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 14-04-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
¿Has reservado memoria para los arrays?
El segundo bucle for (int j=0;i<NumCasillas;j++) , ¿Te das cuenta que no tiene control?. i no se incrementa, solo j y no existe un condicional de control para j=> bucle infinito.... ¿No querrás decir for (int j=0;j<NumCasillas;j++)

Código:
TFrame **casillas = new *TFrames[NumCasillas];

for (int i=0;i<NumCasillas;i++)
   //for (int j=0;i<NumCasillas;j++)  
  for (int j=0;j<NumCasillas;j++)
  {
    TFrame *aux= new TFrame("Aqui no estoy muy seguro de que pasarle");
    casillas[i][j]= aux;
    casillas[i][j]->Name="X";
    casillas[i][j]->Legth="100";
    ......
    aux=null;
  }
Responder Con Cita
  #5  
Antiguo 14-04-2008
bochan bochan is offline
Miembro
 
Registrado: abr 2008
Posts: 11
Poder: 0
bochan Va por buen camino
Hola!!
Si de eso ya me habia percatado... el problema que tengo es que no sé que parametro pasarle al constructor TFrame. Le he pasado de todo y no me dibuja nada de nada.
si hago
Código:
TFrame *aux=new TFrame(...);
aux->Top=100
...
Le digo que me dibuje solo un Frame y no me lo hace. Al constructor hay que pasarle un TComponent y no sé que variable pasarle
Responder Con Cita
  #6  
Antiguo 14-04-2008
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.210
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Yo pensé que lo harias con TShape.

Saludos.

Edito:

TFrame no sirve para dibujar, sino para implementar frames preprogramados o nuevos controles que a su vez contengan mas controles. Un TFrame a secas, no sirve para nada....

Última edición por escafandra fecha: 14-04-2008 a las 16:19:47.
Responder Con Cita
  #7  
Antiguo 14-04-2008
bochan bochan is offline
Miembro
 
Registrado: abr 2008
Posts: 11
Poder: 0
bochan Va por buen camino
Hola!!

Hombre los TShapes solo me ofrecen dibujar cuadrados,rectagulos y no sé que más... El tema esta en que yo he creado el laberinto a mano, creando los frames 1 a 1, lo que pasa q asi es una forma poco elegante y además las dimensiones del laberinto se hace en tiempo de ejecucion. Ademas quiero que cada casilla tenga un valor, y eso con TShape como lo haria??

Muchas Gracias por la ayuda!

Edito:
He probado a crear TShape de forma dinamica, tampoco puedo!!! El constructor me pide un TComponent igual que el TFrame..
Lo he creado asi:
Código:
TShape *aux=new TShape(this??);//Sigo sin saber que poner
  aux->Shape=stRectangle;
  aux->Top=250;
  aux->Height=320;
  aux->Visible=true;
Y sigo son ver nada, ni Shape ni Frame... como narices creo este tipo de cosas de forma dinamica???

SAludos

Última edición por bochan fecha: 14-04-2008 a las 22:23:46.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Dibujar en DBImage Caral Varios 3 23-11-2007 07:46:21
Cambiar propiedad de componente del formulario padre al cerrar el formulario hijo jzginez OOP 5 22-06-2007 21:40:51
Dibujar lineas mcnudi Impresión 3 09-11-2006 13:52:54
Dibujar línea dicatek Gráficos 8 29-07-2006 16:47:26
pasar datos de un formulario vista a cualquier formulario @-Soft OOP 2 28-09-2004 21:56:01


La franja horaria es GMT +2. Ahora son las 23:21:29.


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