Kopírování komponent v C++ ??? – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Kopírování komponent v C++ ??? – C / C++ – Fórum – Programujte.comKopírování komponent v C++ ??? – C / C++ – Fórum – Programujte.com

 

ota.simek@email.cz
~ Anonymní uživatel
5 příspěvků
28. 7. 2010   #1
-
0
-

Ahoj, chci se zeptat jestli nemáte někdo zkušenosti s kopírováním komponent v Turbo C++. Chtěl bych, aby na začátku programu byl v jednom rohu panel (TPanel), já zadám číslo a program udělá to, že ten panel zkopíruje a dá vedle něj až jich bude tolik kolik bude číslo. Nevím jak by se to dalo vyřešit (jestli to vůbec jde). Jestli máte někdo nějaké zkušenosti, byl bych rád ze nějakou konzultaci.

Nahlásit jako SPAM
IP: 82.117.136.–
liborb
~ Redaktor
+18
Guru
28. 7. 2010   #2
-
0
-

Budeš k tomu potřebovat jeden for cyklus. V něm budeš tvořit nové instance TPanel a kopírovat jejich parametry (pokud nemáš k dispozici kopírovací konstruktor), tj. např. stejné rozměry. No a pozici budeš "počítat" z toho vedle stojícího.

Nahlásit jako SPAM
IP: 85.207.166.–
ota.simek@email.cz
~ Anonymní uživatel
5 příspěvků
28. 7. 2010   #3
-
0
-

To liborb : Nevím přesně jak tvořit nové instance, nemohl by si prosím napsat nějaký příklad. Už jsem to zkoušel taky přez for cyklus, ale asi mám něco blbě. A s tím kopírovacím konstruktorem jsem se taky ještě nesetkal.

Nahlásit jako SPAM
IP: 82.117.136.–
liborb
~ Redaktor
+18
Guru
28. 7. 2010   #4
-
0
-

Něco takového:

TPanel* pNovyPanel = new TPanel(Form1);


pNovyPanel ->Parent = Form1;
pNovyPanel ->Top = 0;
pNovyPanel ->Left = pPredchozi->Right;
pNovyPanel ->Width = pPredchozi->Width;
pNovyPanel ->Height = pPredchozi->Height;

Nahlásit jako SPAM
IP: 85.207.166.–
ota.simek@email.cz
~ Anonymní uživatel
5 příspěvků
28. 7. 2010   #5
-
0
-

To liborb : No a to mi udělá nový panel s názvem pNovyPanel, ale když jich budu chtít víc.

Nahlásit jako SPAM
IP: 82.117.136.–
liborb
~ Redaktor
+18
Guru
28. 7. 2010   #6
-
0
-

Tak to budeš potřebovat pole.

Nahlásit jako SPAM
IP: 85.207.166.–
ota.simek@email.cz
~ Anonymní uživatel
5 příspěvků
28. 7. 2010   #7
-
0
-

To liborb : A to jde? Aby bylo pole v názvu komponenty.

Nahlásit jako SPAM
IP: 82.117.136.–
liborb
~ Redaktor
+18
Guru
28. 7. 2010   #8
-
0
-

Rozhodně jde pole komponent:



TPanel* panely[10];

for (int i = 0;i < 10;i++) {
panely[i] = new TPanel(Form1);

panely[i] ->Parent = Form1;
panely[i] ->Top = 0;
panely[i] ->Left = pPredchozi->Right;
panely[i] ->Width = pPredchozi->Width;
panely[i] ->Height = pPredchozi->Height;

pPredchozi = panely[i];
}

Nahlásit jako SPAM
IP: 85.207.166.–
ota.simek@email.cz
~ Anonymní uživatel
5 příspěvků
28. 7. 2010   #9
-
0
-

tak to děkuju, vyzkouším

Nahlásit jako SPAM
IP: 82.117.136.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 142 hostů

Podobná vlákna

Velikosti komponent — založil pkubicek

Ukazání komponent — založil Alan

Vlastný komponent... — založil Mega.Lama

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý