ERROR prilikom upisa recorda u datoteku?! [Delphi]

2

ERROR prilikom upisa recorda u datoteku?! [Delphi]

offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Nisam to koristio al cuo sam da najbolju podrsku za stampu ima Delphi 3 (malo cudno al istinito). Ima Printer Wizard objekt. Imam ja source za stampanje texta koji se nalazi u Edit.Text pa bi to mogao tako da realicujes. Znaci ubacis jedan EditBox u njerga ucitas to sto hoces da stampas pa odstampas. Za direktno stampanje ne znam....
Ako si zainteresovan da ovako resis problem javi se objasnicu ti.

@Rexpen
Zaboravio sam da napisem sto se tice ovog mog nekadasnjeg problema to je reseno na drugoi nacin. Probavao sam ja sve, a ne samo sa textualnim datotekama. Deklarisao sam slog npr. record INFO i onda naveo da je datoteka npr. f: file of INFO; a ne f: text;



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Rexpen 
  • Novi MyCity građanin
  • Pridružio: 10 Jan 2004
  • Poruke: 16

Au. Nisam bio jasan: ne zanima me stampanje na stampacu, nego prikaz takvih padataka na ekranu.
Vise podataka u datoteci, vise slogova, vise polja - kako to i u koji objekat to smestiti na ekranu da se prikaze jedno ispod drugog?



offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Sad razumeo pitanje...
Ako su ti u datoteci upisani slogovi onda ovako:
Npr. type osoba = record
ime: string[10];
prezime: string[15];
adresa: string[40];
telefon: string[14];
end;

To je slog koji je upisan u datoteku...
Ubacis EditBox u Formu programa i ona ce dobiti ime Edit1. Ako u tom editboxu hoces da ispises npr. telefon iz sloga iz datoteke onda stavis osoba.telefon:=Edit1.Text; (Edit1 je ime EditBoxa)

Ovo sam ti napisao sa predpostavkom da znas kako da listas datoteku.
While not eof(f) do.... gde je f datoteka.
Ako je nejasno javi se imam zivaca objasnicu ti opet.

offline
  • Rexpen 
  • Novi MyCity građanin
  • Pridružio: 10 Jan 2004
  • Poruke: 16

Ok. To mi je do sada bilo jasno. Sa datotekam znam da radim u Pascalu - znaci slogovi, polja, pretrazivanje, Eof, EoLn i slicno...
Takodje mi je jasno i ono sto si mi objasnio sto se JEDNOG sloga tice - procitam jedan, i smestim ga u Edit. Sve je to ok...
Ono sto mi i dalje nije jasno je: kako da otvorim datoteku i CELU je prikazem na ekranu, SVE slogove. Dakle, u ovom nasem primeru: ime, prezime, adresa, telefon JEDNE osobe, pa ispod DRUGE i tako ... While Not Eof(f). Jedino sto sam uspeo je da stampam u obicnom Editu, ali jedno iza drugog po horizontali, a ne ispod. Treba mi u stvari jedan veliki Edit koji moze da stampa vise redova podataka. Mislim da se radi o komponentama iz dela Data Controls, ali ne znam da radim sa njima.

Ovo mi je prilicno hitno, pa ti zahvaljujem na zivcima...

offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Ako hoces da ti prikazuje jedno ispod drugog kao kompletan Text onda nemoj da korostis EditBox nego objekat Memo. Nalazi se odmah pored EditBoxa.
Evo sta pise za Memo u helpu:
TMemo is a wrapper for a windows multiline edit control.

Unit
stdctrls

Description
Use TMemo to put a standard Windows multiline edit control on a form. Multiline edit boxes allow the user to enter more than one line of text.<<< --- (ova recenica ti govori sve). They are appropriate for representing lengthy information.

Kako se koristi memo nadji u helpu. Ako bude nesto nejasno samo pitaj.

offline
  • Rexpen 
  • Novi MyCity građanin
  • Pridružio: 10 Jan 2004
  • Poruke: 16

E ovako... Dosta toga sada znam, ali ne i sustinu, ocigledno.
Metoda klase TStrings je Add (ima i Insert, Move, Delete Clear itd)

function Add(const tekst:string): Integer;

Ova metoda smesta sadrzaj argumenta tekst kao novu liniju u svojstvo Strings tekuceg objekta (za koji je metoda pozcvana)

Kako da pozovem ovu funkciju?! Nije mi jasan onaj deo "tekuci objekat za koji se poziva"?
Ja hocu da klikom na jedno Dugme, otvorim datoteku, i stampam polja slogova, svako u zasebnom Memo objektu... Tu je negde resenje, ali sam se zaglavio...

Takodje se danas nesto bunio oko konverzije razlicitih tipova stringova, nisam pronasao konverzionu funkciju da ih prevedem.

Pomoc.

offline
  • Rexpen 
  • Novi MyCity građanin
  • Pridružio: 10 Jan 2004
  • Poruke: 16

Stop the press !!! Najnovije vesti.

Ne znam kako, ali uradio sam nekako, i RADI! Idem da skontam.
Kod je:

procedure TForm1.Button1Click(Sender: TObject);
Var StringList1,StringList2:Tstrings;

begin
StringList1:=TstringList.Create ;
StringList2:=TstringList.Create ;

assignfile(f,'c:\proba.dat');
reset(f);

while not eof(f) do
begin
read(f,radnik);
with StringList1 do Add(radnik.Ime);
with StringList2 do Add(radnik.Prezime );
with Memo1 do Lines.Assign(StringList1);
with Memo2 do Lines.Assign(StringList2);
end;
closefile(f);
end;

Ako imas neki komentar/savet, molim te javi.
Hvala, cao!

offline
  • Rexpen 
  • Novi MyCity građanin
  • Pridružio: 10 Jan 2004
  • Poruke: 16

PS: Deo koji smesta StringList u memo, moze da ide i izvan while...do petlje (izgleda). U petlji se samo vrsi formiranje tog slozenog stringa, a po izlasku iz petlje se njegova vrednost (jedanput!) smesta u Memo, a ne u svakom prolazu.

Ostalo mi je nejasno kako da dodam podatke u postojecu Memo listu?

offline
  • Đuro Glumac
  • dipl. ing. informatike
  • Pridružio: 08 Feb 2004
  • Poruke: 3640
  • Gde živiš: ApAtIn

Rexpen poslacu ti source od programa koji radi sa memo pa onda proucavaj. Poslacu ti sutra sada sam previse zauzet a prog mi je na nekom CD-u.

offline
  • Rexpen 
  • Novi MyCity građanin
  • Pridružio: 10 Jan 2004
  • Poruke: 16

Odlicno, hvala ti.
Adresu imas.

Ko je trenutno na forumu
 

Ukupno su 1008 korisnika na forumu :: 53 registrovanih, 2 sakrivenih i 953 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 1567 - dana 15 Jul 2016 19:18

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: amonsrb, Apok, aramis s, Belac91, bonaparta, Boris90, bounty hunters, cavatina, cetka, dankisha, darkangel, dejanbajat, Dragan Vašalić, dragoljub11987, drgnk, Drug pukovnik, Dusko Nikolin, duskovuk63, Gama, goran.vvv, helen1, hyla, indja, jesenko1974, kalens021, Kubovac, KUZMAR, ltcolonel, MarKhan, Marko Marković, MB120mm, mean_machine, miljannis, ostoja2, pein, Profica, Rakenica, raykan, rovac, Rpg 29, Sale.S, sasa.zoric, shaja1, Skijavoneska, SsssssNOVI, t.mile, tmanda323, Toni, USSVoyager, vasa.93, vathra, vlvl, voja64