C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Динамические объекты на фрейме, не отображаются
PATRIOT
Отправлено: 10.03.2006, 13:17


Ученик-кочегар

Группа: Участник
Сообщений: 17



на фрейме динамически создаются создаются TEdit'ы (копия этого кода на TPanel создает и отображает их на раз), фрейм виден, а TEdit'ов нет.
Visible=true;
parent — указан фрейм.
Grigoriy
Отправлено: 10.03.2006, 15:05


Мастер участка

Группа: Участник
Сообщений: 381



Хорошо бы предоставить участок кода.
Gal
Отправлено: 10.03.2006, 18:01


Станционный диспетчер

Группа: Участник
Сообщений: 124



QUOTE

parent — указан фрейм.

А у фрейма нет какого-нибудь слоя, например TPanel?
PATRIOT
Отправлено: 13.03.2006, 13:59


Ученик-кочегар

Группа: Участник
Сообщений: 17



CODE

#include <clx.h>
#pragma hdrstop

#include "Watch.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.xfm"
TF_Watch *F_Watch;
//---------------------------------------------------------------------------
__fastcall TF_Watch::TF_Watch(TComponent* Owner) : TFrame(Owner){
TEdit* E;
E = new TEdit(F_Watch);
E->Name="Edit";
E->Parent=F_Watch;
E->Visible=true;
E->Color=clRed;
E->Top=20;
E->Height=150;
E->Width=230;
}//---------------------------------------------------------------------------


To Gal: TPanel нет точно.
PATRIOT
Отправлено: 17.03.2006, 11:10


Ученик-кочегар

Группа: Участник
Сообщений: 17



Мои вопросы настолько просты, что на них нет смысла отвечать, или настолько сложны, что на них не знают ответа???
А то это не первый безответный вопрос.
sad.gif sad.gif sad.gif
olegenty
Отправлено: 17.03.2006, 11:27


Ветеран

Группа: Модератор
Сообщений: 2412



с фреймами никогда не работал. но когда один из сотрудников поимел с ними проблемы, порекомендовал фреймы заменить на формы (они также легко встраиваются). он последовал этому совету и огрёб счастье (все проблемы улетучились).
poland
Отправлено: 17.03.2006, 13:28


Ученик-кочегар

Группа: Участник
Сообщений: 16



А я с ними постоянно работаю (использую и вложенные) и особых проблем нет, кроме регулярной необходимости залезать в dfm родителя после изменения внешнего вида фрейма. Для начала исправь код
CODE
__fastcall TF_Watch::TF_Watch(TComponent* Owner) : TFrame(Owner)
{ TEdit* E;
  E = new TEdit(this);
  E->Name="Edit";
  E->Parent=this;
...
}

Хотя я не уверен, что в конструкторе Handle фрейма уже установлен.
PATRIOT
Отправлено: 17.03.2006, 14:39


Ученик-кочегар

Группа: Участник
Сообщений: 17



QUOTE (poland @ 17/03/2006, 13:28)

CODE
__fastcall TF_Watch::TF_Watch(TComponent* Owner) : TFrame(Owner)
{ TEdit* E;
E = new TEdit(this);
E->Name="Edit";
E->Parent=this;
...
}


Огромное СПАСИБО !!!!!!!
Помогло. Стоило лишь пожаловаться. smile.gif

Вернуться в Вопросы программирования в C++Builder