Jump to content
GSForum - Segélyvonal

Delphi kezdõknek


Recommended Posts

Posted
1. Azért nem lehet megoldani az általad felvettt problémát úgy, ahogy Te gondolod, mert a Labl1.Caption-nak már nincs több tulajdonsága, így LoadFromFile tulajdonsága sem. Nem felelne meg ha EditBox-ból olvasnád be a forrásfájl nevét?

2. A 10 szót egyenként is be lehet olvasni: TextFile-ként nyisd meg a forrást, majd a következõ módon olvashatod be a szavakat:

   {változók bejelentése}
   AssignFile(fin, 'szavak.txt'); Reset(fin); {remélem jól emlékszem még}
   While NOT(EOF(fin)) Do
      Begin
         ReadLn(fin,szo);
         inc(dim);
         a[dim]:=szo; 
      End;
    {felételeztem, hogy a szavak külön sorokban vannak, minden szót egy tömbben tárolok, amit késõbb majd fel lehet dolgozni}

Egy kicsit kényelmesebb megoldással is ki lehet válaszani a fájlt. Ha jól emlékszem ebben a témában írtam le (szerintem nem is egyszer), hogy miként lehet a TOpenDialog komponenst használni. Rendkívül egyszerû, és segítségével a Windows-os megnyitóablakot lehet elõvarázsolni.

  • 4 months later...
Posted

:) Sziasztok!

Remélem tud nekem valaki segíteni?

Van egy Memo1-em és egy SpinEdit1-em A Memo1.Lines-ban lévõ szöveg betûméretét szeretném változtatni

a SpinEdit1.Value értékének megfelelõen. Edit-tel és Label-lel már megtudtam csinálni : Label1.Caption.Font.Size:= SpinEdit1.Value; de a Memo1.Lines-nak nem találom a font tulajdonságát.

Elõre is köszi a segítséget!

Posted

Ha hazamegyek, megnézem, de úgy rémlik, a Lines nem kell bele, tehát:

Memo1.Font.Size; Memo1.Font.Color és így tovább...

Posted

Sziasztok!

A problámám a következõ lenne van egy Formom rajta egy Button, Listview és egy Image.

Hogy lehet azt megoldani,ha a Buttonra kattintok,akkor a Listviewbõl az Imageben mutassa xy képet.

Elõre is kösz a segítséget.

  • 2 months later...
Posted
Sziasztok!

 

Szerintetek

KUZMINA JEKATYERINA DR. TAMÁS PÉTER TÓTH BERTALAN

Programozzunk Delphi 7 rendszerben! címû könyvébe érdemes belekezdenem, ha a program felépítését, és a struktúrált tervezést nagyjából tudom, de delphit még soha nem tanultam. Nem lesz túl magas szintû? Elõre is köszi a választ.

 

Üdv Mindenkinek!

 

Én is valami hasonlót kérdeznék.

Turbo Pascalban otthon vagyok, de most át kellene írnom egy DOS-os ügyviteli rendszert "Windows"-osra :).

Számtalan adat kezelése, millió lekérdezés...

A Delphire gondoltam, de a nevén kívül sokat nem tudok róla. Én a struktúrált programozáson nõttem fel, riogatnak az "objektum-orientált-programozás" nehézségeivel, merthogy az egészen más mint a régi típusú programozás és teljesen más szemléletet igényel. Olvastam az OOP-rõl mindeféle anyagot, de megmondom az õszintét, kínai volt. Szóval okosok véleményét kérdezem: nagyon nehéz lesz ? Menni fog könyvbõl (pl. a fentibõl) ? Boldogulok egyedül is ? Sajnos nincs olyan, akit a kérdéseimmel személyesen ostromolhatnék... :(

Kérlek, oszlassátok el a félelmeimet...:)

 

Posted

Semmi gond, ne aggódjál. A Delphi-ben ugyanúgy fogsz tudni dolgozni, mint anno a Pascal-ban vagy C-ben.

Az objektumokból valószínűleg annyit fogsz használni, amennyi a megjelenítéshez kell, a többit a régi jól bevált strukturált módszerekkel is megírhatod.

Ráadásul Pascal-ból Delphi-re fordítani nem is olyan bonyolult dolog, hiszen a nyelvjárás szinte megegyezik.

 

Először szerintem ismerkedjél meg a különböző vizuális objektumokal, mint a textbox, listbox, combo, editbox, stb. Ha ezek mennek, meglátod, a többi már menni fog.

Posted

Köszönöm a bátorítást, remélem tényleg menni fog.

  • 1 month later...
Posted

A segítségeteket szeretném kérni.

 

Azt szeretném megoldani, hogy a ListBox kijelölt elemét a vágólapra lehessen másolni, majd egy Memo szövegébe illeszteni.

 

Már rátaláltam:

 

var

k : integer;

begin

for k:=0 to ListBox1.Items.Count-1 do

begin

if ListBox1.Selected[k] then

begin

ClipBoard.AsText:=ListBox1.Items[k];

end;

end;

 

Posted

Szerintem felesleges ciklussal végigmenned a ListBox elemein. Mintha lenne SelectedIndex property vagy SelectedItem. Most nem ellenőriztem le, de így emlékszem.

 

Szerk.: Bocs, úgy látom több kijelölt elemről van szó. Visszaszívtam. :)

Posted

Még azt szeretném kérdezni, hogy Listbox tartalmát, hogyan kellene Fájlba elmenteni? (txt-be)

 

Betölteni, már sikerült.

Posted

Ugyan ott kell keresned, ahol a betöltést. :) -> ListBox.Items.SaveToFile(fájlnév) ;)

Posted

Köszi, már én is rájöttem.

Az volt a baj, hogy a writeln-al próbálkoztam.

Posted

Azzal is megoldható a dolog, csak ez így kényelmesebb. Gyanítom a háttérben WriteLn van, fájlmegnyitással, és az elemeken ciklussal végigmegy, és kiírja.

Posted

Csinálnom kell egy bináris keresést szemléltetõ programot. Ehhez ugyebár rendezett tömbre van szükség. Úgy akartam megoldani, hogy egy trackbarral ki lehet választani, hogy hány elem legyen. Véletlen lottószámokkal feltöltök egy listboxot, úgy hogy ne legyen benne két egyforma:

procedure TForm1.Button1Click(Sender: TObject);
var
i,szam:byte;
halmaz:set of byte;
begin
Listbox1.Clear;
randomize;
halmaz:=[];
For I:=0 to trackbar1.position-1 do
  Begin
    repeat
      szam:=random(90)+1;
    until not (szam in halmaz);
    listbox1.Items[i]:=inttostr(szam);
  End;

end;

 

Aztán a Listbox1 elemeit átmásolom a listbox2-be, majd rendezem buborékos rendezéssel:

 

procedure TForm1.Button2Click(Sender: TObject);
var i,j,s:byte;
begin
For I:=0 to Listbox1.Count-1 do
   listbox2.Items[i]:=listbox1.Items[i];
For I:=0 to ListBox2.Count-2 do
  For J:=0 to Listbox2.Count-1-I do
    if strtoint(listbox2.Items[j])>strtoint(listbox2.Items[j+1]) then begin
                                                                        s:=strtoint(listbox2.Items[j]);
                                                                        listbox2.Items[j]:=listbox2.Items[j+1];
                                                                        listbox2.Items[j+1]:=inttostr(s);
                                                                      end;
end;

 

De nem mûködik, hibát ír ki. Valami teljesen egyszerû baja lehet, de nem bírok rájönni, hogy mi, már kezdek beleõszülni. :fal:

 

Aki rájött, hogy mit rontottam el, légyszíves írja le ide.

Posted

Nem probléma, hogy üres halmazzal dolgozol? :hááát:

Posted

Valóban üres a 'halmaz' nevû változód.

De nekem kicsit bonyolultnak tûnik a rendezett halmaz ilyen módon történõ elõállítása.

Én biztosan azt csináltam volna, hogy veszek egy véletlen egészet mondjuk 10-ig, ez az induló értékem és annyiszor adnék hozzá egy véletlen egész növekményt, mondjuk szintén 10-ig, ahányszor kérték. Ez eleve rendezett tömb, mégis véletlen számokból áll.

Persze, ha lottószámokkal kell dolgozni és a buborékot is meg kell tudni mutatni, akkor tiszta sor.

Posted
Nem probléma, hogy üres halmazzal dolgozol? :hááát:

A halmaz csak a Listbox1 feltöltéséhez kell, utána a Listbox1 tartalmát átmásolom a Listbox2-be és ott rendezem, ez független a halmaztól.

 

Valóban üres a 'halmaz' nevû változód.

De nekem kicsit bonyolultnak tûnik a rendezett halmaz ilyen módon történõ elõállítása.

Én biztosan azt csináltam volna, hogy veszek egy véletlen egészet mondjuk 10-ig, ez az induló értékem és annyiszor adnék hozzá egy véletlen egész növekményt, mondjuk szintén 10-ig, ahányszor kérték. Ez eleve rendezett tömb, mégis véletlen számokból áll.

Persze, ha lottószámokkal kell dolgozni és a buborékot is meg kell tudni mutatni, akkor tiszta sor.

 

Kipróbálom amit javasoltál. Nem kell sem buborék, sem lottószám.

Posted

A bináris kereséshez minek kellenek véletlenszámok? Fogjál számokat 1-1024-ig, azt tíz lépésben ki lehet találni.

Posted

Mert a program elsõdleges célja a szemléltetés, és ahhoz túlzásnak érzem az 1024 számot. :pislog:

Posted

Pedig a bináris keresésnek meg pont ez a lényege. Ha veszel 8 számot, azt 3-ból lehet kitalálni, ugye 2 az n-ediken, nem valami átütõ.

Én néha eljátszom egy-egy osztállyal, hogy gondoljanak egy számot 1000-ig, és 10 kérdésbõl kitalálom, persze nehezen hiszik el, aztán meglepõdnek. Arról nem is beszélve, hogy 1000 meg 10, az elég jó két szám, az 500 és 9 már hülyébben hangzik.

Mindegy persze, te tudod.

Posted

Egy eseményhez hozzá szeretném rendelni, hogy lenyomódjon az egyik billentyû (a Back Space).

 

Ezt, hogy tudnám megoldani?

 

A kódját tudom de nem tudom, hogyan hívhatnám meg, hogy végre is hajtódjon a gomb lenyomás.

Posted

Még egy problémában kérném a segítségeteket:

 

Helyesírás ellenõrzést szeretnék végeztetni egy szövegen.

 

Találtam is egy példaprogramot az alábbi oldalon, ami a word helyesírás ellenõrzõjét hívja meg.

 

http://www.softwareonline.hu/Article/View.aspx?id=946

 

A program letöltési linkje:

http://www.softwareonline.hu/Forward.aspx?mode=1&id=946

 

Be is tudtam építeni a saját jegyzet programomba, de az a gondom vele, hogy csak word 97-essel mûködik, hogyan lehetne megoldani, hogy az újabb verziókkal is menjen?

Posted

Semmi verziófüggõ nincs benne. Mennie kell az újabb változatokkal is.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...