help s projektom vol.2 (Delphi)

Sekcia o programovaní, programovacích jazykoch...
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

help s projektom vol.2 (Delphi)

Príspevok od používateľa Don Ferignon »

Ako tému na semestrálny projekt budem robiť hru Dáma a potreboval by som nejaké tipy

- chcel by som nastaviť superpevnú veľkosť formulára - aby sa nedala meniť za behu aplikácie
- neviem ako mám spraviť šachovnicu, resp sa neviem rozhodnúť medzi jednoobrázkovou a 64 obrázkovou (neviem ako by som jeden obrázok rozdelil na 64 častí tak, aby som s nimi vedel zvlášť pracovať - určite to nechcem zakaždým pomocou súradníc vypisovať) Dúfam že viete na čo myslím, lebo toto je môj najväčší problém, bez čoho ani začať neviem
Naposledy upravil/-a Don Ferignon v Pi 15. Máj, 2009, 16:29, upravené celkom 1 krát.
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>
Používateľov profilový obrázok
pEpinko
Používateľ
Používateľ
Príspevky: 850
Dátum registrácie: Po 19. Máj, 2008, 09:31
Bydlisko: BA/NR

Re: help s projektom (Delphi)

Príspevok od používateľa pEpinko »

Takze, pevnu sirku nastavis napriklad takto: Form ma vlastnost Constraints, tam sa da nastavit maximalna a minimálna výška resp. šírka. Ak ich nastavis na rovnaku hodnotu nebude sa dat menit velkost. Najlepsie je myslim nastavit ju priamo v Object Inspectore.

No ja by som sachovnicu rucne kreslil pomocou obdlznikov (velke spomalenie neocakavam). Ak uz by som mal pouzit obrazok tak jeden velky, nakolko mi unika preco by som mal pouzivat viac malych, ked aj tak sa nebude dat zvacsovat a zmensovat.

EDIT: Ak to nieje tajne, zaujimalo by ma kam chodis do skoly, konkretne ma zaujima ci sa este aj inde robia projekty v delphi, alebo to robi iba pan Blaho na FMFI.
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

Re: help s projektom (Delphi)

Príspevok od používateľa Don Ferignon »

Chodím na FMFI a učí ma Blaho :)

díky za ten constrains

Ale mohol by si mi ešte povedať ako by si zisťoval vlastnú polohu figúrky, resp či je v okolí nejaká iná figúrka ak by si plochu vykreslil priamo na formulár ? Pomocou súradníc by to bolo nechutne dlhé, zbytočné a nepraktické.

Najlepšie by bolo keby som to urobil tak, že si tam dám jeden image, ten rozdelím na 64 celkov a k nim zvlášť pristupujem. To by som mohol urobiť aj animáciu. Lenže neviem ako na to :(

btw ďalší dotaz : ako spravím to, že kliknem na niečo (napr button) a otvorí sa mi txt súbor ?
+ lamerská otázka : dám showmessage a ak niekde v texte preskočím do nového riadku, tak to už neberie ako text. Ako teda spravím takýto dlhý showmessage ?
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>
Používateľov profilový obrázok
pEpinko
Používateľ
Používateľ
Príspevky: 850
Dátum registrácie: Po 19. Máj, 2008, 09:31
Bydlisko: BA/NR

Re: help s projektom (Delphi)

Príspevok od používateľa pEpinko »

A naco ti je zistovanie pozicie figurok pomocou obrazkov? Ja som bym mal jednu metodu draw() ktora by vsetko nakreslila. Interne by som sachovnicu reprezentoval ako pole 8x8 s vhodnymi prvkami. Po kliknuti by som hned volal metodu, ktora by spravila prelozenie pozicie kliku (v pixeloch) na policko v mojom poli. Takto sa mozem sustredit na podstatne veci a nie nejake vykreslovanie.

Este celkom nerozumiem, co si predstavujes pod image (ak ten komponent v deplhi tak by som ho samozrejme pouzil a kreslil do neho). Ja som myslel ze mas na mysli nejaku bitmapu...

Otvorit txt subor ches v defaultnom textovom editore systemu, alebo v novom formulari?

A s tym ShowMessage, v zdrojovom kode to musi byt jeden riadok, alebo to napis takto
'text1' +
'text2' +
'text' ...

Ak mas na mysli zalamovanie riadkov v tom Message tak to mozes spravit tak, ze do textu pridas #10#13. Teda text bude vyzerat takto: 'zaciatok'#10#13'druhy riadok'.
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

Re: help s projektom (Delphi)

Príspevok od používateľa Don Ferignon »

pEpinko napísal:Interne by som sachovnicu reprezentoval ako pole 8x8 s vhodnymi prvkami. Po kliknuti by som hned volal metodu, ktora by spravila prelozenie pozicie kliku (v pixeloch) na policko v mojom poli.
To je celkom dobrý nápad. Díky

Asi budem musieť zobraziť txt súbor (v notepade), lebo do showmsg sa mi to nezmestí (príliš dlhý string) (chcem tam vypísať pravidlá hry)
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>
CRiCK
Nový používateľ
Nový používateľ
Príspevky: 17
Dátum registrácie: Po 22. Sep, 2008, 15:56

Re: help s projektom (Delphi)

Príspevok od používateľa CRiCK »

txt mozes nacitat do komponentu memo a to memo zobrazit do noveho formulara.

Kód: Vybrať všetko

var subor:text; riadok:string;
begin
 assignfile(subor,'data.txt');
 reset(subor); // otvori subor na citanie
 Memo1.Clear;
 while not EOF(subor) do begin
  readln(subor,riadok);
  Memo1.Lines.Add(riadok);
 end;
 closefile(subor); // zatvorenie suboru
end;
Používateľov profilový obrázok
pEpinko
Používateľ
Používateľ
Príspevky: 850
Dátum registrácie: Po 19. Máj, 2008, 09:31
Bydlisko: BA/NR

Re: help s projektom (Delphi)

Príspevok od používateľa pEpinko »

Don Ferignon napísal:Asi budem musieť zobraziť txt súbor (v notepade), lebo do showmsg sa mi to nezmestí (príliš dlhý string) (chcem tam vypísať pravidlá hry)
Ak by si chcel pouzit notepad tak tu sa da nieco najst http://delphi.about.com/od/windowsshell ... rogram.htm.

Ale preco by sa to nezmestilo do ShowMessage? Pokial viem ako argument berie string a to v delphi moze byt par gigabajtov textu, pochybujem ze ti nieco take nestaci. Jedine co ma napada je ze ti pise obmedzenie na 255 znakov - literal. Ak mas problem s tymto tak urob nasledovne:

Kód: Vybrať všetko

s: string;
begin
  s := 'prvych 255 znakov';
  s := s + 'druhych 255 znakov';
  ...
  ShowMessage(s);
end;
A malo by to ist (ak to bude ale priliz dlhe neobajvi sa tam scrollbar).
Naposledy upravil/-a pEpinko v Ut 25. Nov, 2008, 00:20, upravené celkom 1 krát.
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

Re: help s projektom (Delphi)

Príspevok od používateľa Don Ferignon »

Nevie niekto prečo mi niekedy nejde spustiť aplikáciu ? Stlačím F9 a nič. Ani z položky run sa to nedá (aplikácia mi nebeží)
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>
Používateľov profilový obrázok
pEpinko
Používateľ
Používateľ
Príspevky: 850
Dátum registrácie: Po 19. Máj, 2008, 09:31
Bydlisko: BA/NR

Re: help s projektom (Delphi)

Príspevok od používateľa pEpinko »

Don Ferignon napísal:Nevie niekto prečo mi niekedy nejde spustiť aplikáciu ? Stlačím F9 a nič. Ani z položky run sa to nedá (aplikácia mi nebeží)
Z tohto popisu tazko usudit, odporucam urobit novy projekt a pocopypastovat to tam.
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

Re: help s projektom (Delphi)

Príspevok od používateľa Don Ferignon »

Asi som otváral zlý súbor. Neviem presne ktoré súbory sú potrebné a ktoré načo slúžia.
Ale to je jedno.. hlavne že som ešte v podstate nič nenapísal :red:
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>
Používateľov profilový obrázok
pEpinko
Používateľ
Používateľ
Príspevky: 850
Dátum registrácie: Po 19. Máj, 2008, 09:31
Bydlisko: BA/NR

Re: help s projektom (Delphi)

Príspevok od používateľa pEpinko »

Len informativne:

.dpr - subor s projektom (otvarat by si mal prave ten), vacsinou v nom nic podstatne nieje
.dfm - definicie formularov (ich vzhladu)
.pas - takto sa znacia unity (tam je vacsina podstatneho kodu)
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

Re: help s projektom (Delphi)

Príspevok od používateľa Don Ferignon »

díky moc :cool:

Keď sa do toho pustím už vážnejšie, tak ešte určite budem mať otázky :)
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

Re: help s projektom (Delphi)

Príspevok od používateľa Don Ferignon »

Tak chcel by som spraviť niečo ako má vista šach. Keď prejdem ponad políčko, tak sa mi zvýrazní.

Chcel som si rozdeliť plochu na dvojrozmerné pole 8x8, ale neviem akého typu by mohli byť prvky. Nevie niekto poradiť ?
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>
Používateľov profilový obrázok
pEpinko
Používateľ
Používateľ
Príspevky: 850
Dátum registrácie: Po 19. Máj, 2008, 09:31
Bydlisko: BA/NR

Re: help s projektom (Delphi)

Príspevok od používateľa pEpinko »

Don Ferignon napísal:Tak chcel by som spraviť niečo ako má vista šach. Keď prejdem ponad políčko, tak sa mi zvýrazní.

Chcel som si rozdeliť plochu na dvojrozmerné pole 8x8, ale neviem akého typu by mohli byť prvky. Nevie niekto poradiť ?
No podla mna by mali byt prvky typu nejakej abstraktrej triedy, ktora by mala podedencov fednotlive figurky... alebo iba obycajne zaznami...
Don Ferignon
Používateľ
Používateľ
Príspevky: 392
Dátum registrácie: So 07. Jún, 2008, 10:49
Bydlisko: Štúrovo

Re: help s projektom (Delphi)

Príspevok od používateľa Don Ferignon »

neviem to.. :smutny: som zúfalý
Acer Extensa 5620G - Intel Core2Duo, 1,4GHz, 2MB Cache, 3GB RAM DDR2 (667 MHz), ATi Radeon Mobility HD24000XT (256 MB, 64bit), HDD 320 GB

<?php $_GET['rich'] or die('trying'); ?>

Návrat na "Programovanie"