Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Delphi - TImage fyzicky na kraji formulára, ak sa nachádza na TPageControl

No a už ma trápi len posledná vec.

Mám na formulári TPageControl a na jednej stránke TImage. Všetko je natlačené úplne vľavo a teoreticky by mal byť TImage hneď na začiatku formulára. No ale nie je tomu tak. Medzi Hranicou formlára a TImage sú asi 4 voľné body. Na TPageControl mám vypnuté zobrazovanie ušiek a vzhľad nastavený na tsButtons. Neviem tam už nájsť žiadnu inú vlastnosť, ktorá by s tým vedela niečo spraviť.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
TPageControl obsahuje "rámeček" kolem, o ten je všechno uvnitř posunuto a jeho šířku nelze (normální…
Rce 12.06.2006 23:16
Rce
Ešte k tomu TPageControl. Toto bola jedniná komponenta, ktorá mi umožnila vyriešiť dilemu, čo s množ…
msx. 13.06.2006 00:23
msx.
Tak zas nemusis prejst az na uroven WinAPI :-), len nepouzi ten TPageControl ak ma nasilu okraj, ale…
MM.. 13.06.2006 00:27
MM..
No ešte teda porozmýšľam.
msx. 13.06.2006 00:31
msx.
Este podpichnem :-) Nechapem teraz celkom aku filozofiu ma Delphi s tym canvasom a dialogmi apod., a…
MM.. 13.06.2006 00:35
MM..
V čom ty vlastne programuješ? MS Visual Studio? Ja som si nedávno nainštaloval C++Builder a celkom s…
msx. 13.06.2006 09:11
msx.
V assembleri :-D Ak potrebujem Win aplikaciu tak VisualC++, trochu ma v poslednej dobe zacal zaujima…
MM.. 13.06.2006 13:09
MM..
Veď ja nájdem nejaké riešenie ohľadom tej hry. Keď už spomínaš BC++ 3.1 pre DOS, tak mám otázku. Ne…
msx. 13.06.2006 22:54
msx.
Nemam tu teraz BC3.1, myslim ze na to bol tam lib.exe (vid. napr. www.uv.tietgen.dk/Staff/Mlha/PC/So…
MM.. 14.06.2006 12:23
MM..
Ja som myslel, že LIB bol len pre BC++.::) poslední
msx. 14.06.2006 12:38
msx.

TPageControl obsahuje "rámeček" kolem, o ten je všechno uvnitř posunuto a jeho šířku nelze (normálními prostředky = bez hacknutí zdrojáku) změnit. Doporučuju použít na přepínání uch TTabControl nebo TTabSet a prvky nacpat do TPanel a vhodně nastavovat Visible nebo natahovat do jednoho TImage obrázky dle potřeby. BTW pro zásobu obrázků stejné velikosti lze celkem dobře použít TImageList.

Ešte k tomu TPageControl. Toto bola jedniná komponenta, ktorá mi umožnila vyriešiť dilemu, čo s množstvom komponent, ktoré by sa bez TPageControl prekrývali. Som na silných úvahách, že to spravím tak, ako tu už bolo napísané. Vykašlať sa na všetko a pustiť sa do všetkého ručne. Asi to tak spravím a kašlem na vizuálne možnosti Delphi. Aspoň lepšie pochopím prácu objektov a tiež aj výsledný súbor EXE bude o poznanie kratší.

Este podpichnem :-)
Nechapem teraz celkom aku filozofiu ma Delphi s tym canvasom a dialogmi apod., ale ja keby som robil takuto hru (VC++) tak to robim inac - bola by to normalne SDI aplikacia s menu, kde by som si client oblast vykresloval sam v WM_PAINT (to je brnkacka aj tak toho wurma musim kreslit sam), a v menu by sa napr. po kliknuti na "Options" zobrazil dialog s nastaveniami (vytvoril by sa az v tom momente na zaklade resource, to je tiez brnkacka), alebo by boli priamo nastavenia v menu (zaskrtavacie), napr. sound (on, off) apod.

P.S. tebe ale asi ide o ten zoznam hracov na zaciatku, tak to by asi bolo tiez v klienskej oblasti ale ako dialog, s nejakym list-om apod., to uz by bolo trochu problematickejsie ale tiez by som to vytvaral len ak by bolo treba a potom uplne zrusil, podvedome nemam rad visible=false, ani vykreslovanie bitmap do tab-ov, je to silne neefektivne.

P.S. ale u takejto gamesy je to asi jedno, nie je to moc narocne na HW...

V čom ty vlastne programuješ? MS Visual Studio? Ja som si nedávno nainštaloval C++Builder a celkom sa mi začína páčiť, hoci som v ňom ešte nič nespravil. Ide o to, že program v C++ sa mi zdá vzhľadovo prehľadnejší a lepšie sa v ňom píše (napr. i++ alebo n /= 4 atď.) A uvažujem, že by som prešiel na C++ od MS. Hádam mi počítač bude stačiť na Visual Studio.

Edit: K hre: Nechce sa mi vytvárať vo vizuále objekty, ktoré budú nahádzané na sebe a potom prepínať panely. Asi to urobím predsa len tak, že objekty nebudú v DFM, ale ich vytvorím priamo z programu a pri štarte. Samozrejme na panely a tie budem len prepínať. Okrem toho aj tak počas behu programu formulár neuvidím, takže je úplne jedno, či objekty vytvorím programovo alebo vizuálne. Vlastne takto budem mať celý DFM súbor "prepísaný" do PAS.

V assembleri :-D
Ak potrebujem Win aplikaciu tak VisualC++, trochu ma v poslednej dobe zacal zaujimat devcpp (lebo nemam vsade VC++ a devcpp je freeware), je to celkom pouzitelne ale velmi tam chyba editor resourcov a nejaky classwizzard a nejaka slusna objektova kniznica (ale urcite sa da nejaka stiahnut). Ak vie niekto poradit dobre doplnky k devcpp tak sem s nimi :-)
A kedysi davno DOS aplikacie v BorlandC 3.1. To bol asi posledny produkt borlandu ktory sa mi zdal vyborny, neskorsie buildery sa mi nepacili.

Edit: k hre: ja ti teraz uz moc nerozumiem, pouzivas uz moc delphi terminologiu. Nakreslit si mozes snad tie panely osobitne a potom jeden vytvorit a druhy zrusit apod., alebo to v delphi nejde? Vytvarat si staticke resources programovo je dost zbytocna namaha. Ale uz som radsej ticho, ty to programujes ja ti nechcem do toho moc kecat ;-)

Veď ja nájdem nejaké riešenie ohľadom tej hry.

Keď už spomínaš BC++ 3.1 pre DOS, tak mám otázku. Nejakú dobu som v tom programoval, ale využíval som len možnosti C, nie C++. Ale doteraz som neprišiel na to, ako sa dá vytvoriť LIB súbor s funkciami. Niečo ako sú v Turbo Pascale knižnice TPU. Totiž, ja som mal funkcie, ktoré som chcel vraziť do knižnice, knižnicu prilinkovať k programu (ani to som nevedel ako) a pomocoou hlavičkových súborov deklarovať funkcie. Ja som nevedel vytvoriť LIB súbor a bol som nútený k projektu pridávať CPP súbor s funkciami, ktoré som hcel mať v LIB. Takže ako na to? Netreba presný postup, lebo už v DOSe nič nerobím, ale len tak okrajovo, že čo bolo treba nastaviť, čo spustiť a tak.

Nemam tu teraz BC3.1, myslim ze na to bol tam lib.exe (vid. napr. www.uv.tietgen.dk/Staff/Mlha/PC/Soft/Prog/BAS/DOS/v bdos/LIB.htm) ktory zo sady .obj urobil .lib, ale zhlavy uz si nepamatam ci sa to dalo aj v GUI, alebo nastaveniami linkera. Vsetko bolo urcite popisane v helpe ktory bol k BC++

P.S. neviem preco miesas C++ a .lib, .lib sa da pouzit vsade (aj keby si programoval v assembleri), nielen u C++.
Podpora OOP myslim ze este nebola dokonala (moc som ju vtedy nepouzival, PC boli pomale), ale bola.

Zpět do poradny Odpovědět na původní otázku Nahoru