Добавление tframe в другой Tframe во время выполнения

StackOverflow https://stackoverflow.com/questions/9313534

  •  26-10-2019
  •  | 
  •  

Вопрос

У меня есть 2 Tframes и кнопка добавления. Я пытаюсь добавить один TFRAME на другой, когда кнопка нажимает. Но потому что мы рассуждаем, что мой код не может работать. Это не добавляет кадр, как это должно. Там нет ошибок или бега, он компилирует и работает, но когда я нажимаю кнопку, она ничего не делает. Я взял его на работу, когда добавил Tframe в Scrollbox, и все, что я сделал, это изменил место для добавления Tframe.

код для tframe2

void __fastcall TFrame2::AddFrame()
{
    int temp = 0;
    TFrame1* NewFrame1 = new TFrame1(this);
    NewFrame1 ->Parent=this;

    TComponentEnumerator * ParentEnum = GetEnumerator();

    while(ParentEnum->MoveNext())
    {
        temp++;
    }

    NewFrame1 ->SetIndex(temp);
    NewFrame1 ->Name = "Frame" + IntToStr(temp);
    NewFrame1 ->Top = ( NewFrame1 ->Height ) * (temp);
}

это код, который я использую для самого tframe1

void __fastcall TFrame1 ::SetIndex(int temp)
{
    this->temp= temp;
}

int __fastcall TFrame1 ::GetIndex()
{
    return this->temp;
}

Информация о LIL BG: причина, по которой я должен добавить TFRAME в другой TFRAME, заключается в том, что я могу добавить группу компонентов в другую группу компонентов, я не знал никакого другого способа сделать это. Позже я добавляю tframe2 в основную форму.

Это было полезно?

Решение

Учитывая код, который вы показали, единственное, что может пойти не так, если вы устанавливаете детскую кадр Top свойство к значению, которое превышает Height Свойство своего родительского кадра, так что вы не увидели бы ребенка на экране, даже если она существует в памяти.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top