- VR topik
- Milyen billentyűzetet vegyek?
- Intel Core Ultra 3, Core Ultra 5, Ultra 7, Ultra 9 "Arrow Lake" LGA 1851
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- SSD kibeszélő
- Videós, mozgóképes topik
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- DVB-T, DVB-S (2), DVB-C eszközök
- Milyen TV-t vegyek?
- Megjött a Red Magic kompakt táblagépe az EU-ba
Új hozzászólás Aktív témák
-
-
-
-
Nálam kicsit komplexebb a probléma.
Deplhi 7 alatt akrok programozni. Delphi 6-ban ismertem a jól bevált Server-Socket komponenseket. De ez 7.0-alatt nincs. Itt mi helyetesíti ezeket!! HELP!! -
BatemanX
tag
válasz
Terrorista #493 üzenetére
FileName : string;
...
FileName := FileListbox1.Items[FileListbox1.ItemIndex]; -
Terrorista
senior tag
válasz
Terrorista #494 üzenetére
UP!
-
Terrorista
senior tag
UP!
Valaki segítsen mert sürgős lenne!!
Előre is kösz! -
Terrorista
senior tag
Üdv!
Hogyan lehet egy FileListBox-ban megállpítani azt, hogy melyik elem van kiválasztva, illetve annak a filenak a nevét megkapni??
Egy filemanagert szeretnék készíteni és ahhoz kellene, hogy pl. másolásnál meg tudjam adni, hogy melyik file van kiválasztva. -
Alan
aktív tag
Hát... ehhez én első lépésben a TXMLDocument komponenst ajánlom (Internet fül a komponenspalettán). Nem vészesen bonyolult a használata, itt egy kis példa neked kiollózva egy régebbi programomból:
procedure AddNodesToTree(From: IXMLNode);
var i: integer;
CurrentXMLNode: IXMLNode;
begin
for i := 0 to From.ChildNodes.Count-1 do
if From.ChildNodes[ i ].NodeName = 'keresettcimke'
then begin
CurrentXMLNode := From.ChildNodes[ i ];
// adatfeldolgozás a CurrentXMLNode alapján
// pl. valami := CurrentXMLNode.Attributes[ 'egyikattributum' ] ;
// valami2 := CurrentXMLNode.Attributes[ 'masikattributum' ] ;
end;
if CurrentXMLNode.HasChildNodes then AddNodesToTree(CurrentXMLNode);
end;
...és ezt a rutint így hívnám meg:
AddNodesToTree(XMLDocument1.DocumentElement, nil);
Remélem, olvasható marad a kód...
[Szerkesztve] -
Alan
aktív tag
Egy lehetőség: tegyél fel egy TPaintBox komponenst a kívánt méretben, alá egy gombot (Button1), majd a következő kódot írd bele a programodba:
...
var ABitmap: TBitmap;
...
procedure TForm1.Button1Click(Sender: TObject);
begin
ABitmap := TBitmap.Create;
ABitmap.LoadFromFile('c:\temp\kép.bmp');
PaintBox1.Canvas.Draw(0, 0, ABitmap);
end;
Ekkor ''normálisan'' kirjazolja a képet. A 0, 0 helyére kell beírnod a kívánt koordinátákat az eltolt rajzoláshoz.
Aztán persze lehet továbbfejleszteni, a koordinátákat más kezelőszerv állásához vagy az egér mozgásához kötni lenyomott bal gomb esetén stb. -
corm
senior tag
Ahoj neketk! Olyan kérdésem lenne, hogy xml fileokból kívánnám beolvasni a bennük szereplő értékeket, és írni is beléjük, frissítés szerűen. Van a delphinek olyan része, ami ezt királyosan kezeli, vagy nincs? Ha van némi alap tudást is oszthattok ezzel kapcs. thx előre is...
-
corvin
csendes tag
Üdv!
Egy (szerintem) egyszerű kérdésem lenne: Delphiben hogy lehet megoldani azt, hogy egy Image objektum a képét nem a 0;0 koorinátától mutassa, hanem pl, az 50;50-től? Tehát a kép bal felső sarkát eltoljam az Image bal felső sarkától... -
Erick
csendes tag
Köszi a hozzászolásokat,sikerült megoldanom a dolgot!
A következő problémám tudok fájlt kezelni,de nem tudok könyvtárt, egyenlőre nem találtam megoldást,hogyan kell könyvtárat másolni,remélem tudtok segíteni. -
Alan
aktív tag
Tetszik a nyelvi leleményem, mi? Csak azért, hogy ne unatkozzon nagyon, aki olvassa
Egyébként amit a debugolásról írsz, az a szívemből szól. Gondolkodni kell, különben az ember elhülyül az automatikus kiegészítőktől, a CodeRush automata mindenféléjétől, ami persze szükséges, mert ha már egyszer használtad, nem bírod ki nélküle, de nem szabad rögtön a debuggerhez kapni meg átírni úgy, hogy nem is értem, mi volt a probléma. OK, van, hogy fél nap elmegy egy problémára, de ha megoldod, annál jobb nincs.
Én e-mailt csak akkor írok mondjuk valami supportnak, ha biztosan tudom, hogy az idegen kód a hibás, kinyomoztam, hol a hiba és tudom vagy legalább sejtem, hogy lehetne kijavítani. Addig inkább küzdök, és közben rájövök egy csomó hasznos mindenfélére.
Kár, hogy amikor ''termelni'' kell, nincs idő és az ember ráfanyalodik a borzalmakra, mindenfélék bemásolására kipróbálás nélkül és egyebek, fujj. Azért ezt igyekszünk leszorítani jól -
lao ce
aktív tag
engem kifejezetten bosszant ha a debuggert kell hasznalnom, nalam az mar a harmadik lepes, a 'mi a tokom van mar ezzel, debuggolni kell' kategoria.
elotte van a 'haladok tovabb es kozben kigondolom mi a baj' es az 'odalapozok a kodhoz es bambulom egy darabig'.
a debug utan mar csak az 'akkor csinaljuk maskent', a 'keresgelek az interneten' es vegul a 'megkerdezem az interneten' kategoriak vannak.
ami erdekes, hogy attol fuggoen hogy melyik lepesben oldodik meg a baj, visszafele is lepdelek. tehat ha valaki segit az interneten, akkor utana meg keresgelek egy darabig hogy miert is nem talaltam meg eredetileg valamint mas megoldasok utan. aztan beepitem es remenykedek hogy megy, debuggal megnezem hogy mi tortenik a kapott kodreszletben. aztan bambulok a sorokra hogy megertsem, vegul haladok tovabb es gondolkodok rajta hogy hogy a tokombe nem lehetett erre rajonni magamtol is.
van akinel 'nem megy ezert zaklatok emailen idegeneket' kategoria az elso es egyetlen.
ps: aramvonalas rutinok -
Alan
aktív tag
Pont ezt akartam javasolni (Application.OnMessage), csak elaludtam, _AnTi_ megelőzött
Még egyszerűbb egyébként az ApplicationEvents komponens használata, aminek az OnMessage eseményét kell ugyanígy megadni. Arra vigyázni kell, hogy borzalmasan gyakran (akár másodpercenként ezerszer) fog meghívódni az ide helyezett rutin, ezért nagyon áramvonalasra kell megírni. -
_AnTi_
tag
Szia! Ezt egy ezer éves progimból szedtem ki, remélem segít (a billentyű nyomkodásra egy példa)!
Private/public részben deklaráld mondjuk ezt:
procedure gomb(var msg: tmsg; var handled: boolean);
procedure TForm1.gomb(var msg: tmsg; var handled: boolean);
var
keybstate: Tkeyboardstate;
begin
case msg.message of
WM_KEYFIRST..WM_KEYLAST:
begin
getkeyboardstate(keybstate);
if (keybstate[VK_LEFT] and 128)=128 then
balra;
handled:=true;
end;
end;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
application.OnMessage:=gomb;
end;
A billentyűkonstansokat megtalálod a helpben, ha rákeresel mondjuk a VK_LEFT-re! Így elvileg ha aktív a progid, akkor bármely billentyűt le tudod kezelni (ha van rá konstans). Természetesen, ha nagy hülyeséget írtam javítsatok ki!
Bye! -
Szalma
őstag
válasz
BatemanX #479 üzenetére
(Ne vegye senki magára, a következő kritikám elsősorban a tendenciára vonatkozik: a ''könnyűnek'' tűnő debuggolási lehetőség gondosan leszoktatja az embereket a programozás kódolás előtti (gondolkodós) szakaszáról, mert majd debug közben megnézzük, hogy a változók hogyan állnak (stb.) és egyre inkább előtérbe kerül az iteratív, próbálkozzunk, amíg elfogadható nem lesz jellegű kódolás... És szerintem ez rossz...)
Szeretettel:
Szalma
ui.: Ha van korrekt debugger, persze én is használom. A delfié különösen jó. -
BatemanX
tag
Na ja. A WndProc-cal való szembenállásom onnan eredeztethető, hogy ha nem vigyáz nagyon az ember, itt keletkezhetnek a legszebb Access Violation hibák (amik néha a fejlesztőkörnyezetet is hazavágják...ó hány órányi munkám veszett oda 1-2 alkalommal emiatt
) és az ide írt kódrészek szinte teljesen ''debugolhatatlanok''. (Próbáljon az ember egy olyan eljárásba flag-et helyezni, ami már akkor meghívódik, ha megmozdítja az egeret.)
Nekem a hook sokkal jobban bevált. -
Szalma
őstag
válasz
BatemanX #477 üzenetére
(A borland szerint a WndProc az elfogadható megoldás. Ezért overrideolható. És delfihez képest elegáns... A windows szintű hook nem épp korrekt... És csak az üzenet dispatch végén kapja meg a fókuszba lévő kontroll az üzenetet. A vindóz elsőnek a fókuszált ablaknak adja, az meg annak, akinek akarja... Mivel a delfi VCL nem túl windows, ezért saját üzenetosztója van. Ezt tudja az ember meglovagolni...)
Szeretettel:
Szalma -
BatemanX
tag
Hűha, akkor ehhez kicsit jobban a dolgok mélyére kell ásni. Most lehet, hogy sok hülyeséget fogok írni, a szakértőbbek majd kijavítanak, mivel amit leírok csak tapasztalati tényeken alapszik és nem ismerem hozzá a Delphi mélylélektanát.
Szóval a probléma ekkor az, hogy mindig az a komponens kapja meg a billentyűleütést, amelyiken a fókusz van, így 3 lehetőséged van:
Legrosszabb:
Minden formon lévő komponensed onkeydownjához odaírod a már említett kódot.
Valamivel egyszerűbb, de nem javasolt undorító heggesztés:
Override-olod a WndProc eljárást és figyeled a Message paraméterét. Ha az általad kívánt billentyűkombináció jön, meghívod a megfelelő eljárást.
Elegáns, jó megoldás:
Csinálsz egy ''hook''-ot a billentyűzet eseményekre. Erre most konkrét kódot nem írnék, mert elég komplikált, inkább google-ban keress rá a CallNextHookEx eljárárásra és a találatok között biztos lesz olyan ami rávilágít a megoldásra (annó én is ezt csináltam). -
joe o4
tag
mi az a delphi
-
Szalma
őstag
(Hát az elég fogós. Írni kell egy saját üzenet diszpeccselőt, amiben elcsíped a neked kellő windows message-kat, a többit pedig tovább passzolod. A fő form ablakának az üzenetkezelőjébe kellene beilleszkedned. WndProc környékén kell nézelődni, a VCL-ben megtalálod, onnan ki lehet lesni...
''Sajnos'' most nincs delfim, nem tudok pontosabb infóval szolgálni...)
Szeretettel:
Szalma -
Erick
csendes tag
Köszi a hozzászólásod BatemanX!
Nekem pont a bárhol álok billentyűre reagálás kéne,azt nem tudom megoldani. -
BatemanX
tag
-
gone
csendes tag
Sziasztok! Meg tudná nekem mondani valaki, hogy Delphiben
hogy lehet lekérdezni a felhasználó nevét (aki a windows-ba bejelentkezett és használja a programomat) Valamint azt, hogy milyen felhasználó (rendszergazda vagy más/van-e rendszergazda joga).Ezekre a tulajdonságokra lennék kíváncsi.
Üdv Gone -
BatemanX
tag
1. Helpben file management routines-ra keress rá és kidobja az összes függvényt/eljárást, amire szükséged lehet.
2. Itt attól függ, mikor és milyen billentyűzetkombinációt akarsz hozzárendelni. Ha pl. csak annyirra van szükséged, hogy ha a Comboboxon állsz, mondjuk F5-re nyiljon le, az viszonylag egyszerű. Az OnKeyDown eseménykezelőhöz kell vmi ilyesmit rendelni:
procedure TForm1.DriveComboBox1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if Key = VK_F5 then
DriveComboBox1.DroppedDown := true;
end;
Ha viszont azt szeretnéd, hogy a formon bárhol álllva (tehát nem a DriveComboBox-on van a fókusz) és úgy reagáljon vmi billentyűkombinációra...nos az egy komplikáltabb dolog. -
yksz
aktív tag
Lao ce hova tunt? Pedig már egész jól kijottem vele. Mind1 addig jó míg van vki, aki megválaszolja kérdéseinket.
-
Erick
csendes tag
Üdvözlök mindenkit!
Segítség!
A problémám nem tudok fájlkezelést csinálni!Szüksége lenne fájl törlésre,másolásra,létrehozásra, ugyanezt szeretném könyvtárral is megcsinálni.
Még kezdő vagyok! Könyvem az van csak nem találtam benne megoldást, példa meg abszolút nincsen benne.Probáltam már sok irányban elindulni,de semmi nem vezetett sikerre.Leginkább példával vagy forráskóddal tudnátok segíteni,mert elméletben már minden itt van a fejemben,csak a megalósítást nem tudtam véghez vinni.
A másik kérdésem,hogyan lehet billentyűkombinációt rendelni a DriveComboBox-hoz?
A célom egy fájlkezelőprogram elkészítése
Nagyon szeretném,ha ebben nekem segítenétek!
Előre is köszi!!!
[Szerkesztve] -
yksz
aktív tag
Most nem tudom sehogy se kipróbálni, és a Helpen sincs konkrétan leírva, ezért kérdezem meg, hogy az Internet=>Clientsocket és Serversocket jó LAN-ra is, vagy csak Internet?
-
Alan
aktív tag
válasz
Drótszamár #461 üzenetére
Persze, OK, én is kérdezgetek fórumokon, csak nem voltam biztos benne, hogy szerinted sem pótolja ez a kutatást. De most már tudom, hogy szóval vedd úgy, hogy nem szóltam semmit
-
Szalma
őstag
válasz
Drótszamár #460 üzenetére
(A TPaneles megoldás a te barátod. Van jó kis onclickje (vagy hogyhívják delfiben), meg hintje is... Lehet egy custompanelből kellene egyet származtatni, de nem fontos.
Panelra tedd rá azt a fránya TImage-t, design time-ban jobbgomb a panelen és bringtofront (van ilyen?!), majd a programból méretezd és pozícionáld oda és akkor a panelt, amikor szükség van rá. (Boundsrect talán a nyom a helpben. SetBounds?) Vigyázz! A TImage align paraméterét az első formcreate-ben (talán onshow mégjobb lenne) állítsd széthúzósra, mert különben rémálom lesz a panelt eltalálni egérrel...)
Szeretettel:
Szalma -
Drótszamár
őstag
Kössz az alternatív megoldást. De, mert de mindíg van... Egy valamit elfelejtettem mondani: a képeknek majd funkcionálni is kéne: felémegyek --> hint, ha rákattintok akkor pedig uj form megnyitása, a képtől függő tartalommal.
Asszem valami más megoldást kell kitalálnom. Buttont nem akarok használni, mert csúnya.
Ha nem jutok semmire lehet hogy glscene-vel csinálom meg.
Kössz a segítséget mindenkinek. -
Alan
aktív tag
válasz
Drótszamár #456 üzenetére
Hallgass Szalmára, nagyon jól mondja. StretchBlt() a te barátod, vagy inkább StretchDraw(), ha nem akarsz ennyire mélyre fúrni. A TBitmap-eket menet közben is létrehozhatod, sőt elég belőle összesen 2 vagy 3, aztán majd ezekben váltogatod a képeket körbe-körbe (double/triple buffer).
[Szerkesztve]
Ja, és olvass doksit, próbálkozz, kísérletezz, abból tanulsz csak. Ha a fórumon válaszolunk neked, abból nem tanultál sokat, legközelebbre elfelejted. Nem lesz a tiéd a tudás, csak felhasználod.
[Szerkesztve] -
zenit
tag
válasz
Drótszamár #456 üzenetére
Bocs, kicsit félreérthető voltam:
úgy értettem, hogy ilyenkor egy nil-t kell átadni neki paraméternek. -
Szalma
őstag
válasz
Drótszamár #456 üzenetére
(Még egy apróság: TGraphic igen nehezen fog TWinControl fölé kerülni, parent ide vagy oda... (Vindóz+delfi -> végtelen z-order mizéria.
) Egy tipp alternatív megoldásra (szebb, jobb látvány, kissebb .exe az eredménye):
TBitmap-ekbe rántsd be a képeket, majd egy legfelülre hozott wincontrol (mondjuk TPanel) felületére (canvas) fessd fel BitBlt-el vagy StretchBlt-el.)
Szeretettel:
Szalma -
zenit
tag
válasz
Drótszamár #454 üzenetére
A Parent property-t is be kell állítani a szülőre (a Create csak a tulajdonost állítja).
Elképzelhető, hogy a korábban létrehozott kép takarja az újat (de nem biztos!), ekkor használd a BringToFront eljárást.
Szerk: A Create-nek csak akkor adj meg paramétert, ha azt akarod, hogy a tulajdonosa szabadítsa fel, amikor majd ő is felszabadul. Én jobb szeretem az általam létrehozott objektumokat magam felszabadítani, így ekkor elég egy nil-t megadni.
[Szerkesztve] -
Drótszamár
őstag
Sziasztok!
Tudna nekem valaki segíteni? Futási időben akarok képeket (Timage) pakolni egy másik kép fölé, de nem akar összejönni.
k : array[1..1000] of Timage;
for i:= to 1000 do ......
k:=Timage.create(szülő);
k.top, left, picture.loadfromfile, .....
Beállítok egy csomó mindent de nem jelenik meg a kép.
Mit szúrtam el? Nagyon rossz irányba indultam ?
(a végső verzióban majd egy sorban akarom tárolni a képeket) -
yksz
aktív tag
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Shape1.Top:=Shape1.Top+1;
if shape1.Top=170 then shape1.Top:=50;
if shape1.Top=50 then timer1.Enabled:=false;
end;
procedure TForm1.Shape1Click(Sender: TObject);
begin
Osszeg:=StrToInt(Edit1.Text);
if Osszeg=0 then label1.Visible:=true;
if Osszeg>0 then
begin
Osszeg:=Osszeg-2;
Edit1.Text:=Inttostr(Osszeg);
Timer1.Enabled:=true;
Timer2.Enabled:=true;
Timer3.Enabled:=true;
Timer4.Enabled:=true;
end;
end;
procedure TForm1.Timer2Timer(Sender: TObject);
begin
T:=T+1;
if T>3 then T:=1;
if T=1 then Image2.Visible:=true else image2.Visible:=false;
if T=2 then Image3.Visible:=true else image3.Visible:=false;
if T=3 then Image4.Visible:=true else image4.Visible:=false;
end;
procedure TForm1.Timer3Timer(Sender: TObject);
begin
A:=T+1;
if A>3 then A:=1;
if A=1 then Image5.Visible:=true else image5.Visible:=false;
if A=2 then Image6.Visible:=true else image6.Visible:=false;
if A=3 then Image7.Visible:=true else image7.Visible:=false;
end;
procedure TForm1.Timer4Timer(Sender: TObject);
begin
B:=T+1;
if B>3 then B:=1;
if B=1 then Image8.Visible:=true else image8.Visible:=false;
if B=2 then Image9.Visible:=true else image9.Visible:=false;
if B=3 then Image10.Visible:=true else image10.Visible:=false;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
T:=2;
A:=1;
B:=3;
end;
procedure TForm1.Timer5Timer(Sender: TObject);
begin
timer2.Enabled:=false;
if Timer2.Enabled=false then timer3.Enabled:=false;
if timer3.Enabled=false then timer4.Enabled:=false;
end;
A Timer5 nem állítja le a képek váltakozását. Mit írtam rosszul? Hibát nem ír, csak nem áll le.Ja, ha fontos az intervalja: 6000
-
yksz
aktív tag
A {$WARN SYMBOL_PLATFORM OFF} csak annyit csinál, hogy a warnokat, meg a hinteket nem mutatja meg, vagy ki is ''torli'' a progiból?
-
yksz
aktív tag
Nem ide tartozik, de melyik progival lehet fórummotort csinálni?
-
Alan
aktív tag
Adj valami bővebb kódot, ennyiből nem lehet elég jól megállapítani, hogy mi a gond. A ''Close'' helyett mindenképpen írd azt, hogy ''Application.Terminate''. Ha zavar, hogy ilyenkor hirtelen megjelenik, majd eltűnik a főform, csináld azt, hogy pl. ''Halt(1)'' a ''Close'' helyett, erre durván (vagyis nagyon duLLLván) kilép a program. Ez utóbbi nem mindig célszerű, látatlanban nem tudom, hogy milyen struktúrájú a programod, lehet, hoyg access violation lesz a vége.
Amúgy pedig debug infóval fordítsd le (Project -> Options -> Compiler -> Debugging csoportban mindenhová pipa, majd Project -> Build), lépésenként futtasd (F8 billentyű), menj bele a kérdéses részbe, és nézd meg, hogy a kivétel pontosan hol keletkezik. Az is lehet még, hogy nem a te try..except..end blokkodabn keletkezik a kivétel, vagy valahol máshol van egy üres except..end kivételkezelő, ami ''megeszi'' a kivételedet és már nem jut el a kezelődhöz. -
tusi74
őstag
Tegnap végigcsináltam a tesztelést.
Viszont most derült ki, ha az adatbázisba loginolás-nál Cancelt nyomsz, vagy rossz jelszót írsz be, akkor exception error-ral kilép. Hiába írtam, az első form indulásához, hogy try database1.open except close., nem azt csinálja, hogy kilép, hanem elkezdi megcsinálni a következő formot, és akkor jajveszékel, majd jól le is fagy. Ezt azért lenne még ma valahogy megoldani, mert akkor beleírnám, mert ma már a nyomtató fogja kidobálni a lapokat. -
Alan
aktív tag
''es tarsat talalni a legnehezebb. kerdezd alan-t''
Akkor kérdezem Alan-t. Miért olyan nehéz társat találni?
Nehéz kérdés... bár tudnám, miért van ez. Fiatalon könnyebb. Minél hamarabb kezded, annál jobb az esélyed. Mi lao ce-vel már lassan súroljuk a felső határt, amikor még esélyes a dolog. Te viszont szerintem elég fiatal vagy, úgyhogy csak igyekezz, találj embereket, akiknek van energiájuk és idejük, hasonló témák érdeklik és rendesek, becsületesek, szorgalmasak, segítőkészek, nem ufók, nem hülyék, nem hagynak ott, ha baj van... és dolgozzatok együtt, tapasztaljátok ki egymás stílusát, csináljatok sok közös projektet. És akkor lehetsz a magad ura, saját cégért dolgozhatsz, ami azért nem megvetendő. -
yksz
aktív tag
Hmmm... Szép. Gratula!
''miert ne tettem volna ezeket a dolgokat? ezeket csinaltam''
Lett egy saját céged is, vagy egy cégnél dolgoztál? Láttam, hogy írtad:
ket munkahelyem is volt
csak hogy aztán lett-e saját céged?
''es tarsat talalni a legnehezebb. kerdezd alan-t''
Akkor kérdezem Alan-t. Miért olyan nehéz társat találni?
''a matekra is hasalj ra''
Ez megvan -
Alan
aktív tag
(Ha sok időd lenne, akár IFDEF-ekkel is megcsinálhatnád, és akkor kettő helyett egy programod lenne, amit pl. parancssorból -debug paraméterrel vagy debug build opció beállításával lehetne teszt üzemmódban is futtatni. De most már ezt ne, inkább majd a következő projektjeidnél.)
-
Alan
aktív tag
Jó ötlet!
Még ha van kedved, azt is megcsinálhatnád, hogy a futási időben összeállított SQL parancsok végleges alakját írja ki erre a formra, pl. egy TMemo komponensbe. Tudod, olyan SQL Monitor-szerűségre gondolok, amivel bárki ellenőrizheti, hogy az összeállított SQL parancsok helyesek-e. A három DBGrid-es tesztformodtól, meg ettől a monitortól vérprofin fog kinézni a tesztelés. -
tusi74
őstag
Na van egy ötletem.
Csinálok egy újabb formot, és azon elhelyezek 3 DBGrid-et, és azok ''online'' mutatnák a megfelelő táblákat. És azzal bemutatom az SQL tesztelést.
Ez színvonalas valamennyire.
Ez a teszt form minden form mellett megjelenne, persze az eredeti project más néven mentett verziójában, és állandóan mutatná a táblákat. -
tusi74
őstag
-
lao ce
aktív tag
ha van egy geped mas oprendszerrel (akar kolcson) es a network megy kozottuk,
akkor vegig tudlak vezetni hogy mit kell csinalni hogy lassa az uj gep az oracle-t. eleg necces, de nehany-tizszer eletemben mar sikerult.
biztos ilyet kerdeznek hogy miert eppen az oracle-t valasztotta? jobb ha kitalalsz valamit, az 'azt tudtam megszerezni' valasz hatareset -
tusi74
őstag
Azt mondták idegen géppel nem lehet az ELTE hálójára felcsatlakozni.
A kedvemért!!! bevisznek egy gépet a terembe, amire én!!! előre felinstalláltam az Oracle-t, mindent beállítottam, a nevemet a gépre felragasztják és az államvizsga reggelén rendelkzésre áll. Na ez egy szép műsor lesz. Olyan ValóságShowt lehetne belőle csinálni, hogy nagyobb lenne a nézettsége, mint amikor Zalatnay bevonult a börtönbe. ''48 óra Tusi Oracle-t telepítésére''. Szerintem nagyon jó buli lesz. Viszem a kinyomtatott fórumot.
-
Mancs
csendes tag
Ne félj, ifjú padawan, csak nagy rosszindulattal tudnának megakasztani
Nincs véletlenül egy notebook kéznél, amire előre fel tudnád tenni a klienst, csatlakoznál egy jól felkészített szerverhez és azzal mutatnád be? Megnyugtatna téged is, ha előre látnád, hogy fog menni. -
tusi74
őstag
Csinálom rendületlenül a Copy Generaly holnap is nyitva van 7-től-12-ig.
Sőt vasárnap is. Csak ne lenne az a fránya vizsgám 6-án. Köszi azért.
Örülök, hogy így belelkesedsz, és annak is, hogy nem bántottalak meg, hogy nehéznek találtam, amit írtál, bár nagyon profi, csak nekem nehéz. Én csak light-osan tesztelek.
Szerintetek a védésnél majd jól lefagyasztják, én pedig égek, mint a Reichstag?
Szerkesztve: ''Te ismersz tesztelési módszertant és ezt ők is lássák.''.
Miután Te és Alan fél délután próbáljátok megmagyarázni, igen hát így is mondhatjuk, ismerem. De azért majd ezt a témát elkerülöm, ha csak bele nem kérdeznek.
[Szerkesztve] -
Alan
aktív tag
Elvileg szerintem nem neked kell bizonyítanod, hogy jó, hanem nekik, hogy rossz. A programod ott lesz mellékelve, az a bizonyíték, ha akarják, kipróbálhatják.
Tudom, hogy egy kicsit elvetettem a sulykot, de mit csináljak, belelkesedtem, mert tetszik a munkád. De szerintem sincs már idő arra, hogy mindent teljesen végigcsinálj, csak az a lényeg, hogy te ismersz tesztelési módszertant és ezt ők is lássák. Szóval nem kell annyira aprólékosan, mint amit itt írsz (16 -> 17), hanem inkább olyanokat írj le, hogy a bonyolultabb SQL utasításokat milyen tesztadatokkal próbáltad ki, a futási időben felépített SQL-ek minden ágát kipróbáltad-e és ha igen, milyen paraméterekkel. Aztán egyszerűen megállapítod, hogy erre is, arra is működött. S persze képernyőfotók mindig jól jönnek, ha még van idő a cicomára.
-
tusi74
őstag
Nagyon szépen köszönöm, megkaptam, már én is válaszoltam.
A tieddel csinálom végül is, mert bár Alan-nak is nagyon köszönöm,
az övének egy része kivitelezhetetlen. Legalábbis ilyen bénácskának.
Hogy teszteljem más op. rendszeren, mikor én egyedül nem tudom átvinni az adattáblákat más gépére, max, ha újra megcsinálom. (még azt sem tudom, hogy hogy futtatom a védésnél, mert az itthoni szervert 2 napig telepítettem, és egyszercsak működött. De hogy hogy, azt nem tudom. Ugyanígy fórumosok magyarázgatták, míg meg nem unták, hogy ebbe és ebbe a fájlba írd át ezt és ezt a sort. Na de ez a jövő zenéje, még van 4 hetem ezen agyalni.)
Nem tudok máshonnan a saját gépemre bejelentkezni, úgyhogy a máshol kipróbálás, az is egy jó nagy mese lenne.
Ezeket az SQL teszteléseket metódus teszteléseket le tudom írni.
Már csak az nem világos, hogy hogy bizonyítom be, hogy úgy történt? Screenshotokkal? Pl. Amikor 1-et lépett az előzőhöz képest a dolgozó kód, akkor az jó, hogy a kiinduló állapotban az utolsó dolgozó kódja 16-os volt juhhé, már 17-es! Tehát jól működik.
Mert én mindig az SQL Explorert használtam valójában. -
tusi74
őstag
Köszi, ezt most szépen beleapplikálom.
Mi csak olyat tanultunk, hogy Pascalban mondjuk van a bemenet, és azokra bemeneti feltétel, mondjuk nem lehet negatív. És ha felhasználó mégis negatívat visz be, akkor írja ki, hogy negatív nem lehet, és hurrá nem lehet. És ez volt a teszt.
Csak DOS-os progikat írtunk, nagyon primitíveket. (Még én is 5-ös voltam, úgyhogy túl bonyolult nem lehetett).
Ránk is igaz, hogy leperkáltunk 5 féléven keresztül a másoddiplomás levelezős képzésért nem kevés pénzt, általában a legleamortizáltabb tanárok tanítottak, terem általában nem jutott, úgyhogy egy óriási gépteremből választottak le székekkel egy területet ott ültünk, mellettünk a nappalisok hawaioztak, mi meg minden 3. szót értettünk, ha a tanár elég hangosan túl tudta üvölteni a zajt. Általában nem sikerült neki. Nálunk, mint bukás nem létezik, maximum 5-6-7-szer megpróbálod, természetesen újabb X Ft leperkálása után, de olyan, hogy lemorzsolódás nem létezik, max, ha anyagilag nem bírod.
És a végén kapsz egy diplomát. Ha végig csináltad, tuti. Én a magam részéről akkor még 28 évesen azért vágtam bele, hogy egy jobb álláshoz jussak, és ha megkérdezik, pontosan mihez is ért, legalább egy szakterületet meg tudjak jelölni, na ehhez. Hát az nem jött össze, csak a családi költségvetésből hiányzik egy 7 jegyű szám. Na be is fejezem, mert megint felmegy a pumpa, mint a témavezetőmmel kapcsolatban. -
lao ce
aktív tag
hat nem tudom hogy pontosan nekem mit tanitottak, de eleg hangsulyos a dolog. nem ertem hogyan lehet hogy errol nem beszeltek?
otleteim vannak:
-a program terveben nem art hogyha van valamifele utalas a hibakezelesre
-a funkciok specifikaciojanak meglete is a resze a tesztelesnek
-elvileg le kellene talan tesztelni minden procedurat es funkciot helyes es helytelen bemeneti ertekekkel.
-vegig kellene talan csinalni egy 'joindulatu' es egy 'rosszindulatu' tesztet a felhasznaloi feluleten. joindulatu a mikor szuletett kerdesre az 1922-01-22 a rosszindulatu a 12-333-2. utcanevre mondjuk a petofi utca a joindulatu es haromszaz egyes karakter vagy a ' '' !@#$%^&*43 a rosszindulatu.
-keyboard kombinaciok, szabalytalan kilepes. alt+f4, ctrl+alt+del okoz problemat? ctrl+escape,felnyil,enter,enter?
-ha a programot valahol hasznalnak akkor kulso tesztelesre lehet vinni par napra, es akkor lehet mondani hogy ez meg az a funkcio az o keresukre kerult bele. ez a 'hasznalhatosagi teszt'. de ez lehet egy 'kollega' is ha nem lesz hasznalva a program.
-video teszteles kulonbozo felbontasban, szinmelysegben, temakkal, nagy karakterekkel(!)
-platform teszt... mas gepen es vindoz verzioban. xp sp2 kompatibilis?
-tovabbi dolgok, hogy okoz-e gondot: windows terheles alatt van a futas alatt, tobb peldanyban fut, halozati kimaradas.
-lehetne csinalni egy stress tesztet. megitelni hogy egy-ket-ot ev mulva mekkora lesz a rendszer. aztan insertalni tizezer tanart fejenkent tizezer oraval, es megnezni, hogy melyik resz lett iszonyu lassu.
de senki nem tudja hogy mit kellett volna tanulni es tanitani neked ott... szoval ezek csak otletek. -
Alan
aktív tag
-
tusi74
őstag
Egy vállalkozó szellemű delphi-hez értőt keresek, aki nagyvonalakban elolvasná a diplomamunkám fejlesztői dokumentáció részét, és az ökörhibákat, kijavítaná.
Szerintem egyébként nincs benne túl sok.
Teljesen magamra hagyott a témavezetőm, én pedig ki szeretném nyomtatni, és pénteken beköttetni, mert 6-a a határidő, de jövő héten vizsga+dolgozom.
Viszont úgy azért necces, hogy senki sem olvasta el. Mostanában így emberben nem csalódtam, mint a témavezetőmben. MInden csoporttársam legalább 3x konzultált a sajátjával, elolvasták nekik, engem pedig se kép se hang magamra hagyott.
Aki ezt vállalja, annak elküldeném mailben. Előre is köszönöm. -
lao ce
aktív tag
''...miért nem csináltál egy saját céget, vagy mentél el egy céghez dolgozni''
miert ne tettem volna ezeket a dolgokat? ezeket csinaltam.
''Gondolom az iskoláid elvégzése után nem kis tapasztalatod lehetett''
ugy erted nagy gyakorlatom lett volna? nem, semmi nem volt hiszen addig iskolaba jartam. igaz, egyetem alatt mar egy... nem, ket munkahelyem is volt, dolgoztam. az elso munkahelyemen seged-al-al-al-al programozo voltam es szaladtam ha nem ment valakinek valami a konzolon. tudod... olyan zold szinu kijelzo mint a regi scifikben, bar azt hiszem volt mar egy-ket szines monitor is a csokosok asztalan.
''Vagy csak egyszeruen csináltál volna egy hasznos kis progit, vagy tobbet és eladod''
nem tudtam en hasznos kis progit csinalni. az kulcsfontossagu hogy ki kell talalni egy jo otletet amihez elobb a piacot meg kell ismertni. abban az idoben meg nem volt internet. ezen kivul tars vagy tarsak nelkul nem megy. es tarsat talalni a legnehezebb. kerdezd alan-t
addig is amig suliba jarsz, a programozas mellett tanulj angolul. ha szereted a nyelveket akkor nemetul is. a matekra is hasalj ra, mert jo gondolkodasmodot ad es meg az is lehet hogy kelleni fog. -
yksz
aktív tag
Hmm. Ez igaz. De ha már alapban elkezdted tanulni, gondolom utána nem is hagytad abba, akkor miért nem csináltál egy saját céget, vagy mentél el egy céghez dolgozni? Gondolom az iskoláid elvégzése után nem kis tapasztalatod lehetett. Vagy csak egyszeruen csináltál volna egy hasznos kis progit, vagy tobbet és eladod? Én ezt fogom tenni, bár még alapba járok, nem tanítják sajna
. Szólj ha valamelyiket csináltad!
[Szerkesztve] -
tusi74
őstag
Így legalább most neked fognak legalább annyit segíteni az okosok, mint nekem segítettek.
Nem tűntem el, csak visszamentem a régi törzshelyeimre:
Pl. Bővebben: link -
yksz
aktív tag
Elment szegény Tusi, kihalt a topic
-
lao ce
aktív tag
ja, hat egy jopar evig sikerelmenyt ad. marmint a programozas.
-
Alan
aktív tag
Az az egyik jó dolog a programozásban, hogy mindent megcsinálhatsz, kipróbálhatsz és nincs komoly következménye, ha nem sikerült, ''letúrod'' és kezded elölről, ennél rosszabb nem történhet. Nincsenek fizikai törvények, amik korlátoznának - az életben nem tudok 150 m magasra felugrani, de a szoftverépítésben minden lehetséges.
Szóval nem kell pánikolni, ha valami nincs leírva, kitalálod, megcsinálod, és ha nem jó, továbbfejleszted. Ahogy csináltad ;) És így sokkal nagyobb is az öröm, ha működik a ''szoft'', úgy, ahogy megírtad.
Én egyébként a debugolástól rettegek mindig, vagyis attól, hogy lesz egy hiba a programban, amit nem fogok megtalálni. Ez egy ilyen irracionális félelem, tudod, mint amikor pl. valaki fél a liftben vagy a sötét, kis helyeken. Még sosem volt olyan hiba, amit ne találtam volna meg, de mégis mindig jön a pici gyomorgörcs, ha valami érthetetlenség történik a programomban
Amúgy ha még fogsz fejleszteni ezek után is, akkor ajánlom a Delphi 7 mesteri szinten c. könyvet (Marco Cantú), nagyon jó ez az egész sorozat. Sok példaprogram is van benne, amiket átírhatsz. Jó éjt, aludj még egy nagyot -
tusi74
őstag
Végül is nem ittam, csak jól kialudtam magam. Azért az itt lévők miatt nem ment volna. Nagyon köszönöm.
Szerencsére a Pepsi Max is light-os.
Nekem az a bajom, hogy teljesen pánikba esek, ha valami nincs leírva lépésről lépésre. Állandóan itt van mellettem, a Computerbooks-os Programozzunk Delphi 7 rendszerben. Ha le van írva, amit akarok, akkor hurráá, ha nem, jön a depi.
Meg van még egy jó könyv, a Benkő Tiborné Programozási feladatok és algoritmusok Delphi rendszerben. Ebből komplett eljárásokat adaptáltam magamnak, pl. gombnyomásra egyik listbox-ból kerüljön át a másikba, eddig benn volt a könyvben, de hogy az eredetiből törlődjön ki, azt már én írtam meg annak alapján. Nagy volt ám az öröm, ha ilyen kis dolog működött. -
Alan
aktív tag
lao ce, én általában hasraesek a programozónőktől
Ritka, aki kitart és meg tudja oldani rendesen a dolgokat.
De a humorod az abszolút klasszikusIsmered egyébként a Calvin&Hobbes képregényt? Legjobb a világon. Abban vannak király sorozatok a női témában, persze nem programozónőkkel, hanem óvodásokkal, de a jelenség ugyanaz
Ha ismered, ennyi elég lesz, ha nem, akkor majd értekezünk -
Alan
aktív tag
Királynő vagy, tusi74. Minden elismerésem, tényleg. Aztán ne rókázz sokat ;)
Mondjuk ezen a kódolós fedélzeten én már sokkal ritkábban nyomulok, mint pl. te, lao ce, régen még jobban bírtamA ''zsíros'' kóláról is átszoktam a lájt löttyre, mert híztam 15 kilót, persze ebben benne van a házasság is, meg a lustaság meg minden... És azt vettem észre, hogy már 8-10 óra fejlesztés után elfáradok, pedig a csúcsom 35 óra zsinórban, és a 14-16 meg se kottyant.
Kicsit sajnálom, hogy elmúltak a demós, örömfejlesztős, korrekt versenyes, valódi színvonalat értékelős, egymásnakkódotmegmutatós, mindentmeglehetmégcsinálni stílusú idők. De azért egy jó Delphivel felszerelve még most is klasszul meg lehet nyomni a gombot, nem igaz? -
lao ce
aktív tag
velkam on da bord.
Alan... figyu mar, tusi azt hiszi hogy azert mert nem eszik es csak kolat iszik egesz nap majd mi itt hasraesunk. bevallottan meg a wc-re is kiszaladgal, hat hol tart a vilag komolyan... november ota ccc... melyik ev? tusi, legkozelebb rendelj pizzat, azt siman be tudjak csusztatni a csukott ajto alatt, tudsz kozben fejleszteni -
yksz
aktív tag
Új hozzászólás Aktív témák
Hirdetés
- BESZÁMÍTÁS! Apple MacBook Pro 14 M2 Pro - M2 Pro 16GB 512GB SSD garanciával hibátlan működéssel
- BESZÁMÍTÁS! ASUS Z390 i5 9500 16GB DDR4 512GB SSD RTX 2060 Super 8GB Rampage SHIVA Thermaltake 500W
- Újra Akcióban!!! Ducky One 2 Mini és SF billentyűzetek a bolti ár töredékéért! Számla+Gari
- AKCIÓ! AMD Ryzen 9 3900X 12 mag 24 szál processzor garanciával hibátlan működéssel
- MacBook felváráslás!! MacBook, MacBook Air, MacBook Pro
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest