Hirdetés
- sh4d0w: Kalózkodás. Kalózkodás?
- bambano: Bambanő háza tája
- Hieronymus: Kalózkodás. Kalózkodás? hozzászólás
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Magga: PLEX: multimédia az egész lakásban
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- droidic: Windows 11 önállóság nélküli világ: a kontroll új korszaka
- Luck Dragon: Asszociációs játék. :)
- [K2]: Synology NAS és a felhő
-
LOGOUT

Új hozzászólás Aktív témák
-
Karma
félisten
válasz
Vasinger!
#6215
üzenetére
NPP-ben ne az Encode in..., hanem a Convert to UTF8 without BOM parancsot nyomd, akkor nem kell magad szopatni a Ctrl+H-val. De ha már a CP1250-et aktiválod, a stringliterálokat is úgy kéne kódolni (és nem kommentnek hívni, mert félrevezető). A Character sets - Central European alatt megtalálod.
FYI, a CP1250 egy eltérő kódolás a Latin 2-től (leánykori nevén ISO 8859-2), a Latin 1-től (ISO 8859-1) és az UTF-8-tól. Meg a Unicode is teljesen más téma. Ne csodálkozz hogy nem működik.
-
Karma
félisten
-
Karma
félisten
Reflexió a barátod.
Íme egy példa:
public class ReflTest {
public static void fapapucs() {
System.out.println("FAPAPUCS!");
}
public static void hello(String name) {
System.out.println("Hello " + name + "!");
}
public static void main(String[] args) {
try {
ReflTest.class.getDeclaredMethod("fapapucs").invoke(null);
ReflTest.class.getDeclaredMethod("hello", new Class[] { String.class }).invoke(null, "mobal");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}Direkt beraktam egy paraméter nélküli, és egy paraméteres metódust is - a getDeclaredMethodnál és az invoke-nál is passzolnia kell a típusoknak.
És egyébként ha nincs nagyon jó indokod erre, pofonrúgást érdemel egy ilyen megoldás
Olyan sok szebb alternatíva van a parancsfeldolgozóra is... Például a Command tervezési minta: a Mapben nem stringeket tárolsz értékként, hanem egy megadott (feldolgozó) interfészt megvalósító objektumokat. -
Karma
félisten
válasz
Benceee14
#6181
üzenetére
Mutathatnál egy teljes példát egy ilyen weboldalról, amit így összeraktál.
Erre nagyon jó a pastebin.com.Kicsit elavult egyébként ez a kereted, a HTML5 óta jóval egyszerűbb a fejléc. De ez nem hiszem hogy gondot okozna.
Amúgy meg ha csak kísérletezni akarsz JavaScriptben, sokkal egyszerűbb a jsfiddle.net használata. Csak a megfelelő dobozba be kell írnod a HTML darabokat (nem kell fejléc! csak a fontos body-elemek), a CSS kódot, alulra meg a JS-t. A JavaScript topikban is folyamatosan ezt javasoljuk mindenkinek. Nem utolsó sorban azért, mert futás közben látjuk a problémás kódot, és ki is tudjuk helyben javítani akár.
Maga a játék nem nagy kaland, kell egy véletlenszám-generátor, kezelned kell a kattintást, meg ki kell találnod hogy szeretnéd megjeleníteni az egészet. Pár színezett divvel össze lehet tákolni, az előző tíz percben ezzel szórakoztam, de nem osztom meg még
Majd ha előrejutottál (meg elkészítettem).Ja és igen, a JavaScript topik a megfelelő hely.
-
Karma
félisten
válasz
peter9228
#6151
üzenetére
Ez a baj:
...
gomb2=Button(abl1,text="Sakktáblát rajzol",command=sakktabla())
gomb2.pack()
gomb3=Button(abl1,text="Bábú kirakása (piros)",command=babu("piros"))
gomb3.pack()
gomb4=Button(abl1,text="Bábú kirakása (fekete)",command=babu("fekete"))
...A kiemelt részekkel a gomb létrehozásakor meghívódnak a függvények, ezért rajzolódik ki a tábla és a bábuk. A sakktabla függvény esetében könnyű a dolgod, csak hagyd el a zárójelpárt.
A bábukhoz viszont nincs elég Python tudásom, hogy meg lehet-e valami bindoláshoz hasonló módszerrel, egy függvénnyel oldani...A funkcionális programozás befigyel itt is
A functools modul partial függvényével meg lehet csinálni az ehhez szükséges argumentumkötést. Lásd itt. -
Karma
félisten
válasz
peter9228
#6148
üzenetére
Ebben a sorban:
can.create_rectangle(kx,ky,50,50,fill="blue",outline="red",width=0)A paraméterezés nem jó, mert így azt jelenti, hogy (kx;ky)-ből (50;50)-be rajzol téglalapot.
A kx+50, ky+50 várhatóan közelebbit rajzol majd
Viszont most csak egy pillantásnyit volt időm foglalkozni vele, talán később.
Na jó, még egy pillantással úgy látom, hogy a +200-akat át kéne számolnod. A szövegben itt jól írtad, a kódban kevésbé.
Mondjuk a váltottsorosság miatt ez az egész stratégia kicsit körülményes.
-
Karma
félisten
válasz
dabadab
#6063
üzenetére
Érdekes, én elég sokat használom mindkét környezetet.com de pont fordítva látom, a Qt Creator nem sokkal több egy felturbózott Notepadnál nekem

Mondjuk elsődlegesen QML-ben dolgoztam C++ backenddel, ahhoz nem sok extrát nyújt. A QWidgethez való designert már több mint egy éve nem piszkáltam.
De lehet rosszul csak tartom

-
Karma
félisten
Oké, ez már tényleg undorító.
Nem fáj az ilyet leírni?inotify-t használhatsz anélkül is, hogy netcatot és UNIX toolok tengerét használnád...
http://www.bestofperl.com/miscellaneous/watch-filesystem-for-changes-using-inotify-linux(Sajnos ezzel a telefonnal nem tudok normálisan linkelni.)
-
Karma
félisten
válasz
bambano
#6037
üzenetére
Az ActiveMQ vegulis csak egy pelda volt, masok is szoktak Perllel csevegni...
Az adatbazis trigger cseles megoldas, tetszik :-) Munkahelyi artalom, hogy csak nagy LEGO kockakkal tudok gondolkodni, amikor szerveroldalrol van szo.
A kernelt meg nyilvan azert irtam, mert egy desktop alkalmazassal ilyen munkat vegeztetni szvsz eros. De izles dolga igazabol - jelen esetben ugyis mindegy.
-
Karma
félisten
válasz
bambano
#6034
üzenetére
Végülis kiskanállal is lehet gödröt ásni... De ha már jeszi fizet a T-Mobile tömeges SMS küldéséért, akkor valószínűleg nem megoldás a telefonkötögetés
Főleg ha egyébként a küldést már megoldotta ezek szerint, csak Linux lokál probléma van.Kernelt nem akarsz vele fordíttatni?
jeszi: Egyébként én is message queue párti vagyok, az ActiveMQ-t például össze lehet kötni Perllel. Csak egy kicsit bonyolultabb Perl kód kell, amiből nem spawnolsz olyan sokat.
-
Karma
félisten
Ha ezt az utat járod, akkor nem menet közben kell a felhasználónak beírnia a számot, hanem a megfelelő paraméterrel indítani a programot!
Pl. szorzo.exe 5
Ha ilyen argumentum nélkül indítod a programot, pl. mert csak F5-öt nyomtál a Visual Astudio-ban, akkor az args tömb teljesen üres, az első elemének lekérdezése pedig indexelési hibát okoz értelemszerűen.
Az args[0] előtt mindenképp kezeld le azt, hogy az args.Length == 0!
-
Karma
félisten
válasz
nofx333
#5992
üzenetére
Konkrét célkitűzés nélkül szerintem nem sokra fogsz jutni, hamar elveszel a korpában. Az élő kódok, függetlenül attól, hogy most open source vagy nem (az előbbibe bele lehet látni, utóbbiba meg csak ha belül vagy) rendkívül változatosak minőségben, logikában meg úgy mindenben.
Az open source-ba fejesugrás, pl. bugfixálás meg azért nehéz, mert jó eséllyel azért maradtak sokáig nyitva a dolgok, mert a "kódban élőknek" is túl sok erőforrás lenne - hát még egy kezdőnek! -, de persze sose tudni.
Azt javasolnám, hogy vagy találj ki valami saját hobbiprojektet, ami valamilyen kapcsolatban áll a külvilággal - legyen pl. a júzer felé mert játék, vagy az internet felé mert RSS aggregátor -, mind a kettő rengeteg apró és nagyobb kihívással állít szembe. Vagy próbálkozz például portolási munkával: régi KDE3-as alkalmazást, amit mindenki elfelejtett
, átírni tiszta Qt4-re, vagy valami kedvenc/hasznos programot átírni Androidra. Ezzel látnál egy már működő logikát és architektúrát, mégis lenne elég szabad tered az adaptálással.Szerintem.
-
Karma
félisten
válasz
Bikkrom
#5943
üzenetére
Ha nem csak ujjgyakorlatnak tervezed (pl. vevőnek), akkor vegyél le a polcról egy CMS-t (pl. WordPress) vagy egy portált (pl. Liferay), és építsd össze azzal, ne szívasd magad és a kuncsaftot.
Ha gyakorolni akarsz, akkor is tedd ezt.
Ne akard újra feltalálni a kereket.Ha nagyon biztos hogy hobbiprogramozni akarsz, akkor meg igazából teljesen mindegy, melyik nyelvet választod, mert a natúr JSP vagy PHP épp annyira nyújt beépített támogatást egy ilyen rendszer kiépítéséhez, mint bármely más Turing-teljes környezet... Szerintem. Válassz nyelvi preferencia alapján. (A HTML5 meg nem programnyelv, és így is úgy is szükséged lesz az ismeretére.)
-
Karma
félisten
válasz
Speeedfire
#4873
üzenetére
Most nézem, hogy bár hasonlóan ronda, környezetfüggő megoldás, VS alatt kéne lennie egy _getch() függvénynek is.
-
Karma
félisten
válasz
Speeedfire
#4871
üzenetére
A getchar()-t, scanf()-et például, ha csak arra kell, hogy ne lépjen ki a program, mondjuk ekkor meg olyat is lehet játszani, hogy az IDE ne zárja be az ablakot a futás végén (de ne kérdezd hol lehet bekapcsolni).
Ha azért kellene, hogy echo és pufferelés nélkül olvashass be karaktereket azonnal, akkor ahhoz több szívás kell, vagy MinGW környezet...
-
Karma
félisten
válasz
Speeedfire
#4869
üzenetére
Most néztem rá jobban a kódra, van még pár dolog amit meg kell majd változtatnod. Pl. a cprintf függvénynek semmi értelme, nincs is benne az econioban, úgyhogy printfre kell cserélned. A felesleges dolgokat meg törölni

-
Karma
félisten
válasz
Speeedfire
#4867
üzenetére
conio.h LOL XD
Nem a C fordítóval van a baj, hanem hogy Borland-specifikus dolgokat akarsz használni, aminek semmi köze a C szabványhoz. Nem csoda hogy nem megy.
Néhány funkciót átírtak WinAPI-hoz, econio.h és econio.c, ezen linkek tartalmát copy-pasteld be a projektedbe (econio.h és .c fájlokba, értelemszerűen), és akkor néhány függvényt tudsz használni. A getch-t meg felejtsd el.
-
Karma
félisten
Én nem akartam beleszólni, de egyetértek az álláspontoddal, ha nem magyarázza el senki az OOP szemléletet, abból csak őskáosz lesz - mondjuk a gányolós szkriptnyelvek se segítenek sokat... Én tanárpárti lennék, csak éppen nem ismerek senkit, aki jól magyarázná el a dolgokat.
És szerintem a gondolkodásmód a lényeg, a nyelv csak másodrendű.
x123456: Csak Nokiás Qt van, mivel felvásárolták a TrollTechet korábban. A Nokia egyetlen számomra szimpatikus lépése volt a Qt LGPL licenc alatt kiadása. Azóta a saját cégérük alatt fejlesztik, a KDE meg erre épül, de ahhoz már a Nokiának semmi köze.
-
Karma
félisten
válasz
x123456
#4631
üzenetére
Ne erőltesd, matek és fizika nélkül nehéz jól megírni. Hacsak nem gyakorlásképpen fel akarod újra találni a kereket.
Nézd meg inkább ezt a könyvtárat.
-
Karma
félisten
Az Enterprise csomagot szedted le?
-
Karma
félisten
válasz
Knives94
#4486
üzenetére
Na ezt most ex-has írom, de ha tényleg ASCII-ról van szó, akkor írj ilyen kódot:
if (control) then
begin
control := false;
{ itt kezeled le a kurzorgombokat! }
if (KTaste[72]) then begin ...; end else
if (KTaste[...]) then begin ... { satobbi. lusta vagyok firkalni... }
end
else begin
if (KTaste[0]) then control := true { bejott egy 0 kod, a kovetkezo egy vezerlokarakter lesz! }
else if (KTaste[...]) then ... { itt meg a sima betuk maradtak }
end;A control egy boolean változó. A lényeg az, szóban, hogy az egymás után jövő "0, 72" kombinációkat külön kezeled egy állapotváltozóval.
-
Karma
félisten
Első lépésnek a Beginning Androidot ajánlanám, bár nem olvastam még én se.
-
Karma
félisten
Mondjuk (kezdőnek ez elég durva lehet) én úgy csinálnám akkor már, hogy a UI elemeket (meg a hozzá tartozó parancssori dolgokat) nem fixen hardcode-olom, hanem vagy egy kódban definiált, vagy máshonnan betöltött táblázatból generálom dinamikusan. Ennek meglenne az az előnye, hogy ha legközelebb az mplayer helyett mondjuk a mencoderhez akarsz felületet írni, akkor nem kell nulláról mindent újrakezdeni, csak a konfigurációt módosítani.
-
Karma
félisten
Ne próbálj semmi ilyesmit.
Egyébként sincs cancel() metódus, lol.Inkább olvasd el ezt, vagy simán a stop() dokumentációjánál a magyarázatot:
"Deprecated. This method is inherently unsafe. Stopping a thread with Thread.stop causes it to unlock all of the monitors that it has locked (as a natural consequence of the unchecked ThreadDeath exception propagating up the stack). If any of the objects previously protected by these monitors were in an inconsistent state, the damaged objects become visible to other threads, potentially resulting in arbitrary behavior. Many uses of stop should be replaced by code that simply modifies some variable to indicate that the target thread should stop running. The target thread should check this variable regularly, and return from its run method in an orderly fashion if the variable indicates that it is to stop running. If the target thread waits for long periods (on a condition variable, for example), the interrupt method should be used to interrupt the wait."
-
Karma
félisten
Még ha nem is tetszik a válasz stílusa, teljesen igaza van.
C# all the way! Legalábbis a kettőből.Én inkább azt mondanám, hogy először valami manuálisabb nyelvet tanulj meg, aztán jöhet a laza C#-ozás. Mert ha olyan környezetbe kerülsz, ahol a GC nem fogja a kezed, nagyon érdekes dolgokat lehet művelni, ha nem tudod hogy kell bánni vele.
-
Karma
félisten
Sehogy, a JFrame nem lehet modális. A google első találat szerint vagy JDialogot használsz, vagy pedig a GlassPane-nel varázsolsz. De tisztább egy JDialog.
-
Karma
félisten
Olvasd el a példakódot, és hogy a DocumentListener melyik metódusa mit is jelent valójában. Ami neked kell, az az insertUpdate és a deleteUpdate, amik egy karakter beírásakor és törlésekor hívódnak meg.
-
Karma
félisten
Az eseménykezeléssel ránézésre még gondok vannak. Szerintem olvasgass még egy kicsit, a Sun tutorialjaiból elég sok infót össze lehet gyűjteni.
Jelen esetben két lehetőséged is van, az egyik egy ActionListener beállítása, ami akkor hívódik meg, ha a júzer befejezte a szövegbeírást, vagy használhatsz DocumentListener interfészt, ami minden egyes betűbeírásnál meghívódik.
-
Karma
félisten
válasz
RaPiDsHaRe
#4298
üzenetére
Őőő, pont azt mondtam, hogy én az Eclipse-et szeretem jobban, de majdnem mindegy. Mindkettőhöz vannak kiegészítések temérdek formában és minőségben. Gyakorolni mindkettővel lehet alaphelyzetben is, ha a Java csomagot szeded le belőlük.
A NetBeansből a karcsúbbat, és Neked illőt Java SE csomagnak hívják.
-
Karma
félisten
válasz
RaPiDsHaRe
#4296
üzenetére
JDK az természetesen szükséges, de nem árt mellé egy fejlesztőkörnyezet. A két legnagyobb és könnyen beszerezhető az Eclipse és a NetBeans, egyéni preferencia/vallás kérdése, én személy szerint az Eclipse-et szeretem.
-
Karma
félisten
Jól látod az összefüggést, még annyit tennék hozzá, hogy mivel minden Swing komponens a JComponentből származik, ami pedig az AWT-s Container osztályból, mindennek lehetnek gyerek-komponensei (ez egyébként Composite tervezési minta).
Gyereket hozzáadni a saját komponensedhez az add metódusokkal tudsz, célszerűen még a konstruktorban.
-
-
Karma
félisten
válasz
Csakénvagyok
#4199
üzenetére
Azt nem tudom (nem hiszem hogy firtatnunk kéne, mire is kell neki a védelem), de akkor is a TrueCrypt sokkal komolyabb tool emennél

-
Karma
félisten
válasz
Csakénvagyok
#4197
üzenetére
128-bites titkosítás OMG


Itt egy sokkal komolyabb eszköz. -
Karma
félisten
Segédtömb? Minek is?

Ez simán végigvihető in-place is.A végtelen ciklus meg könnyen elkerülhető, ha a ciklusfeltétel "max > 2" például. Ahol max a véletlenszámgenerálás határa/a még rendezetlen elemek felső határának indexe.
Nem tudom a tanárok hogy csinálják, én mindig páros létszámú osztályba jártam
Bajnokságokon hogy szokott az ilyen lenni? -
Karma
félisten
Nézzük... Most mindent mindennel kétszer összenézel, ennek a fele kapásból felesleges. Eztán azzal tudsz még opimalizálni, hogy valamilyen indexelés alapján (BSP, octree, más voodoo) a tényleges kiszámítás előtt kizárod azokat a lehetőségeket, amik nem ütközhetnek egymással (pl. másik térrészben vannak, lehetetlen ütközni).
-
Karma
félisten
1) Nem indentálsz a kódban. Elég nehezen olvasható...
2) Mi akar lenni az s[i]=a feltétel? Nincs sehol a változód, és egyébként is az összehasonlítás ennél egy lépéssel hosszabb. Az ord() függvénnyel az ASCII kód alapján könnyen meg tudod nézni egyébként, hogy nagybetű-e.
3) A függvényből a ciklus után kellene visszatérni.Remélem ez most nem pont egy házifeladat volt...
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- HIBÁTLAN iPhone 12 Mini 64GB Purple -1 ÉV GARANCIA - Kártyafüggetlen, MS3481,96% Akkumulátor
- HIBÁTLAN iPhone 13 mini 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3139, 95% Akkumulátor
- LG 32UN880P - 32" IPS ERGO / 4K UHD / 60Hz 5ms / DisplayHDR 400 / USB Type-C / AMD FreeSync
- BESZÁMÍTÁS! 4TB Western Digital RED Pro SATA HDD meghajtó garanciával hibátlan működéssel
- Apple Mac mini 14.3 M2 8GB RAM 256GB SSD 1év garancia
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő


Olyan sok szebb alternatíva van a parancsfeldolgozóra is... Például a Command tervezési minta: a Mapben nem stringeket tárolsz értékként, hanem egy megadott (feldolgozó) interfészt megvalósító objektumokat.

A functools modul partial függvényével meg lehet csinálni az ehhez szükséges argumentumkötést.





Pl. odarakod őket a tömb végére, a következő véletlenszámokat meg nem N-ig, hanem N-2-ig generálod.

