Hirdetés

2024. május 4., szombat

Gyorskeresés

Útvonal

Fórumok  »  Szoftverfejlesztés  »  Java programozás (kiemelt téma)

Hozzászólások

(#1901) Devdi válasza x123456 (#1900) üzenetére


Devdi
aktív tag

Sima C... Majd lehet belekukkantok akkor az angolba is. Igaz nem vagyok túl jó belőle, de meg tudok vele birkózni :)

(#1902) x123456


x123456
aktív tag

Apropo java: tudja valaki, hogy változott-e valami a java licencelésével kapcsolatban azóta, hogy az orcle felvásárolta a Sunt?
Olvastam ezt az android-google ellen készülő pert és úgy elméláztam, hogy mi a helyzet pl. a néhai ibm jdk-val, netán az open-jdk-val és egyáltalán a java-ban írt alkalmazásokkal?

(#1903) shev7 válasza x123456 (#1902) üzenetére


shev7
veterán

"Olvastam ezt az android-google ellen készülő pert"

Az teljesen masrol szol. A google irt egy sajat VM-et, a Sun azt allitja, hogy a VM kodjanak egy reszet toluk nyultak. Ennek a pernek semmi koze ahhoz, hogy te irsz egy java alkalmazast.

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1904) x123456 válasza shev7 (#1903) üzenetére


x123456
aktív tag

Az tiszta, hogy maga a per másról szól, csak eszembe juttatta, hogy nem történt-e esetleg valami más is a háttérben, amiről esetleg nem tudok.

(#1905) shev7 válasza x123456 (#1904) üzenetére


shev7
veterán

mire gondolsz? Hogy fizetos lett a java? Arrol vagy barmilyen ilyen temat erinto valtozasrol azert hallottal volna ;)

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1906) x123456 válasza shev7 (#1905) üzenetére


x123456
aktív tag

Konkrétan nem gondoltam semmire. Csak egy ilyen felvásárlás kapcsán az is előfordulhat, hogy változnak a licenszfeltételek.

(#1907) VeAr


VeAr
csendes tag

(#1908) x123456


x123456
aktív tag

eclipse-hez használ valaki GUI tervező plugint? Van olyan, ami ingyenes, viszonylag egyszerűen használható és átlátható(bb) kódot generál (, mint a NetBeans) ?
Bár lehet, hogy a NetBeans kódja csak azért tűnik zűrösnek, mert maga a swing olyan, amilyen. :)
Ettől függetlenül, nekem szimpatikusabb egyelőre az eclipse, jobb lenne azzal folytatni a kísérletezgetést.

(#1909) gygabor88 válasza x123456 (#1908) üzenetére


gygabor88
tag

Jigloo néven található egy swt/swing gui builder plugin.

(#1910) x123456 válasza gygabor88 (#1909) üzenetére


x123456
aktív tag

Köszi.

[ Szerkesztve ]

(#1911) x123456


x123456
aktív tag

Belefutottam két apróságba, amikkel végképp nem tudok mit kezdeni:

metóduson belül lehet-e metódust definiálni? Ha igen, akkor hogyan? Az eclipse-nek nem tecc az ötlet. :) Konkrétan arra kellett volna, hogy egy metódus gyakorlatilag automatizálva tudjon létrehozni swing komponenseket - jelen esetben JButton objektumokat. De ehhez az osztály többi metódusának semmi köze nem lenne, ezért gondoltam, hogy a gombokat felhasználó metóduson belül definiálok egy függvényt/metódust. Ilyet egyáltalán nem lehet?

A másik: egymásbaágyazott osztályokat használva hogyan tudom elérni egy adott példányból az őt magába foglaló objektumot? Megfogalmazva kissé bonyolult, de...

class Xy {
...
class zz extends JFrame {
public zz(){
// na innen hogy tudok hivatkozni az Xy osztály aktuális példányára?
// Itt a super() az a JFrame konstruktorra mutat. Ha meg Xy. minősítéssel
// hivatkoznék rá, akkor csak a statikus tagokat érem el. (és nem feltétlenül konstruktorból szeretnék hivatkozni a külső példányra)
}
}
}

Lehet, hogy csak elfelejtettem valamit a korábban olvasottakból?

(#1912) shev7 válasza x123456 (#1911) üzenetére


shev7
veterán

Az elso kerdesedet nem igazan ertem. Mit csinalna a "belso metodus"?

A masodikra pedig: Xy.this a valasz.

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1913) x123456 válasza shev7 (#1912) üzenetére


x123456
aktív tag

ufff... elkéstem/-tél :)
Épp ebben a pillanatban találtam meg a másodikra a választ.
(azért köszi :) )

Az elsőre pl.:

private JButton x(String cimke, String cmd, ActionListener a){
JButton jb=new JButton(cimke);
jb.addActionListener(a);
jb.setActionCommand(cmd);
return jb;
}

Ennek a most összetákolt kódban csak egy másik, a GUI-t összeállító metóduson belül lenne értelme, nem kellene, hogy a többi metódus lássa.
Egyelőre nincs jelentősége, csak eszembe jutott, hogy mi lenne, ha...

(#1914) x123456


x123456
aktív tag

GridBagLayout... látom, korábban más is szívott vele.
Nem teljesen értem az elemek pozicionálását.

Mondjuk szeretnék egy 5 sorból és 3 oszlopból álló táblát.
A felső 3x3-as területre szeretnék egy JLabel komponenst, aminek a szövege stabilan a terület közepén marad, átméretezéstől függetlenül. (alatta a 4. sorban három JButton, az 5. sort pedig teljesen kitölti egy JTextArea)
Az alsó két sor a gombokkal és a szövegmezővel működik. De a felső, "cimkeként" szolgáló területet nem tudom összehozni. Van egy c változóm GridBagConstraints típussal.

c.fill=GridBagConstraints.BOTH; c.anchor=GridBagConstraints.CENTER;
c.gridwidth=3; c.gridheight=3;
Ezekkel a paraméterekkel adom hozzá a panelhoz, de mindig a terület bal alsó sarkában köt ki a szöveg...

(#1915) A szerzetes


A szerzetes
csendes tag

Elég elborult dolog jutott az eszembe, előre kérek mindenkit, hogy ne harapja le a fejem érte :D
Adott egy Applet, ami mondjuk szabványos grafikus cuccokkal dolgozik. A megjelenítéshez az én gépemen lévő libeket használja, vagy az ő belé van kódolva. Konkrétan arra gondoltam, hogy kitartó munkával tudnék-e a forráskód ismerete nélkül új "skint" írni rá?

"Nem adom fel mert lehet, hogy holnap lesz az én napom"

(#1916) shev7 válasza A szerzetes (#1915) üzenetére


shev7
veterán

az applet azt hasznalja amit a geped virtul machin-je ala rak.

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1917) A szerzetes


A szerzetes
csendes tag

Tehát elméletileg meg lehet azt csinálni, hogy ami az appleten gombok, meg panelek, azt egy konzolos környezetre "lefordítani"...

"Nem adom fel mert lehet, hogy holnap lesz az én napom"

(#1918) shev7 válasza A szerzetes (#1917) üzenetére


shev7
veterán

nem egeszen ertem mit akarsz mondani, illetve elerni. mit akarsz mire leforditani?

''Gee, Brain, what do you want to do tonight?'' ''The same thing we do every night, Pinky: Try to take over the world!''

(#1919) x123456 válasza A szerzetes (#1917) üzenetére


x123456
aktív tag

Nem, ezt még elméletileg sem tudod, ha nem férsz hozzá a forráskódhoz és a program sincs felkészítve rá, hogy a "GUI"-t változtasd utólag.
(legalábbis én így tudom)

(#1920) x123456 válasza shev7 (#1918) üzenetére


x123456
aktív tag

Ha jól értem, valami olyasmit szeretne, amit egyes linuxos programok tudnak: van ugyanannak a programnak X-es felülete és van karakteres felületen működő user interface-e.

(#1921) x123456 válasza x123456 (#1914) üzenetére


x123456
aktív tag

Ezt kissé át kell fogalmaznom, mert azt hiszem, valamit félreértettem elsőre: szóval annyi lenne a lényeg, hogy egy darab komponenst szeretnék egy 3x3 mezőnyi helyet elfoglaló terület közepére tenni úgy, hogy akkor is a mező közepén maradjon, ha változik az ablak mérete. Ezt a GridBagLayout-tal hogy lehet megoldani?
Valahol elvesztem a doksikban. Úgy tűnik, a fill és anchor mezőkön kívül is van még valami, ami befolyásolja a komponensek elhelyezését, mert ezzel a kettővel a max. amit el tudtam érni az az volt, hogy a 3x3-as terület alsó sorának közepére tette...
Hm. Na mind1, még keresgélek.

(#1922) Karma válasza x123456 (#1921) üzenetére


Karma
félisten

A beépített layoutokkal való szívás helyett fogd meg a MigLayoutot, pillanatok alatt össze fogod tudni rakni vele amit szeretnél.

Céges projectben is felhasználtam már (BSD licenc), sok évvel meghosszabbította a várható élettartamomat.

[ Szerkesztve ]

“All nothings are not equal.”

(#1923) x123456 válasza Karma (#1922) üzenetére


x123456
aktív tag

Köszi, egyelőre (a látszat ellenére) nem a használat a lényeg.
Ha komolyabbra fordul a dolog, akkor e célra amúgyis valami GUI buildert fogok használni.
Szeretném megérteni - többek közt ezt is -, hogy hogy működik. Mindig zavart, ha valami nem úgy megy, ahogy a leírása alapján elképzelem.

(#1924) x123456


x123456
aktív tag

Újabb "komoly" problémába ütköztem: a szülő osztály tartalmaz egy statikus main metódust, ami a szülőt példányosítja. Meg lehet írni a szülő osztályban ezt a metódust úgy, hogy öröklődés esetén a gyerek osztályból készítsen egy példányt?
Egyelőre úgy tűnik, hogy ez kivitelezhetetlen...

(eredetileg az eclipse-ben lévő new->class template-ek közé szerettem volna gyártani egy újat, ami megfelel az igényeimnek de kissé bonyolultnak tűnik a dolog, elsőre egyszerűbbnek tűnt a mintát egyszer megírni és az újabb próbálkozásokban csak a mintát bővíteni öröklődés által)

(#1925) Karma válasza x123456 (#1924) üzenetére


Karma
félisten

Ez most csak egy ötlet, de szerintem meg lehet oldani.

Most olvastam, hogy a statikus metódusok compile-time bindingon mennek át, tehát ha az ősosztályban hivatkozol egy saját statikus metódusra közvetlenül, akkor biztosan az ősosztályé fog meghívódni.

Viszont ha reflekciót használsz, akkor meg tudod hívni név alapján.

Úgyhogy megpróbálhatnál az ős- és leszármazott osztályban is egy azonos nevű factory metódust írni, és azt a main()-ben GetClass().GetMethod("xxx") és az Invoke() segítségével meghívni.

Annyi mondjuk a csavar csak, hogy a main() metódust indításkor meg kell határoznod, melyik osztályban keresse a JVM :U De úgyis csak kísérletről van szó, nem?

Élő rendszerekben ez nagyságrendekkel bonyolultabb, általában frameworkök vannak az életciklusokra, a cserélhetőségre meg ilyenek...

[ Szerkesztve ]

“All nothings are not equal.”

(#1926) x123456 válasza Karma (#1925) üzenetére


x123456
aktív tag

Épp az utolsóelőtti mondatod okoz problémát: nem tudom meghatározni az osztály nevét.
Mind1, megközelítem más oldalról a problémát: már tudok menüt gyártani... :)

(#1927) Karma válasza x123456 (#1926) üzenetére


Karma
félisten

Vannak még piszkos megoldások ilyen esetben ;)
Pl. a ClassLoaderrel kézzel töltöd be a legnagyobb sorszámú osztályt. Vagy konfigfájlból olvasod be a betöltendő osztály nevét.

“All nothings are not equal.”

(#1928) x123456 válasza Karma (#1927) üzenetére


x123456
aktív tag

Hát annyit már nem ér ez a játék. Nem akartam minden egyes swing alkatrész kipróbálásakor újraírni/másolni a teljes alapkódot (importok, main metódus stb. stb. stb.), mert ugye a lustaság fél egészség! :)

Egyébként már sokadszor állapítom meg, hogy hülyének lenni állampolgári jog, bár nem feltétlenül szükséges élni ezzel a joggal. :D
Fél napon át szopattam magam azzal, hogy amíg nem állítom be a gridx, gridy változókat a GridBagConstraints változóban, addig szépen megjelenik minden egy sorban. Ha beállítom, akkor csak egy gomb jelenik meg. Napersze: constraint beállít,gomb objektum létrehoz, e kettő ismétlése még 4x, majd az öt objektum felvétele a panelbe/-re/stb. És nem tűnt fel, hogy ama constraint beállításokból csak a legutolsó érvényesül, ezért az összes gombot ugyanarra a pozícióra pakolja. :DD

---
Szépséghibája a dolognak, hogy az 1x1 méretűnél nagyobb JLabel-lel egyáltalán nem boldogulok. :(
Továbbra sem hajlandó középre helyezni.

(#1929) x123456 válasza x123456 (#1928) üzenetére


x123456
aktív tag

Továbbmegyek: semmilyen 1x1 cellásnál nagyobb komponens sem akar úgy működni, ahogy a leírás alapján képzelném:

cc.setLayout(new GridBagLayout());
GridBagConstraints gbc;
gbc=new GridBagConstraints();
gbc.gridx=1; gbc.gridy=1;
gbc.gridwidth=3; gbc.gridheight=3;
JButton b0=createJB("BUTTON0","cmd0",this);
b0.setBorder(new TitledBorder("keretes keret"));
cc.add(b0,gbc);

A "cc" a JFrame.getContentPane()-ből származik. A fentiről én úgy gondoltam, hogy egy 3x3 cellát elfoglaló gombot kapok, a panel bal szélén és tetején egy-egy üres oszloppal, ill. sorral.
Ehhez képest kapok egy egyetlen cellát elfoglaló objektumot az ablak közepén.
Mit rontok el v. értek félre? (az a Border-es dolog csak nyomkövetési céllal került bele: arra voltam kíváncsi, a komponens foglal-e kisebb helyet, mint szeretném vagy a helyfoglalás stimmel, csak a gomb méretezése lesz kisebb - ebből úgy tűnik, valóban kisebb helyet foglal az előírtnál)

[ Szerkesztve ]

(#1930) x123456 válasza x123456 (#1929) üzenetére


x123456
aktív tag

Naszóval ez még mindig homályos, de a weightx=weighty=1 volt részben a megoldás.
Mondjuk én úgy értettem, hogy ezzel az egyes komponensek méretváltozásának az arányait lehet egymáshoz képest szabályozni, nem pedig az egész konténer méretéhez... :F

(#1931) A szerzetes válasza x123456 (#1920) üzenetére


A szerzetes
csendes tag

A vesémbe látsz :)

"Nem adom fel mert lehet, hogy holnap lesz az én napom"

(#1932) Devdi


Devdi
aktív tag

Sziasztok. Szeretnék valamilyen könyvet vásárolni a java-hoz kapcsolódóan. A Java 2 útikalauz Programozóknak 5.0-t néztem ki. Valaki olvasta már? Vagy valamilyen tapasztalat? C-s tapasztalataim már vannak.

(#1933) x123456 válasza Devdi (#1932) üzenetére


x123456
aktív tag

Nekem még a régi, 1.2-es v. 1.3-as Javaról szóló kötetek vannak meg. Végülis nem rossz, ha tudsz angolul és elő tudod mellé venni a sun-os tutorialt is.
A saját példányomnál egy dolog zavar: a 3. kötet gyakorlatilag felesleges. A java ref.guide kissé felületesen magyarra fordított változata.

(#1934) Frigo válasza Devdi (#1932) üzenetére


Frigo
őstag

Ezt vedd meg ha majd megjelenik.Angolúl már elolvastam és egyik legjobb könyv a témában.Szinte mindent megtalálsz benne ami kell :SWING ,generics ,multi-thread ,inner class,JAR készítés etc...és alaposan kivesézi JAVA-s OOP működését is.Ráadásúl tele van képekkel így a vizuális tipusúaknak is érthetően van elmagyarázva.

(#1935) x123456


x123456
aktív tag

Swing környezetben szeretném beállítani, hogy az újonnan létrehozott objektumok milyen fontot használjon. Ez megoldható valahogy?
A teljes UI-ra azt hiszem, be tudom állítani, de mondjuk (értelmetlen - kizárólag a példa kedvéért) létre akarok hozni két menüt. Az egyiket mondjuk Arial, a másikat meg Courier New használatával.
Sajnos(?) a konténerekbe pakolt elemek nem öröklik a konténer font beállításait.

(#1936) x123456 válasza x123456 (#1935) üzenetére


x123456
aktív tag

Épp csak a lényeg maradt le...
szóval létre akarok hozni két menüt, eltérő fontokkal.
Ilyenkor minden egyes menüponthoz egyenként be kell állítani, hogy milyen fontot használjon. Automatizálni persze tudom, de kérdés, hogy van-e valahol a swing-ben/awt-ben eldugva ilyen beállítási lehetőség?

(#1937) x123456


x123456
aktív tag

Létezik magyar nyelvű, forgalmasnak mondható java fórum?
Ezt a topic-ot és a prog.hu fórumát kissé kihaltnak érzem. :)

(#1938) gygabor88 válasza x123456 (#1937) üzenetére


gygabor88
tag

Bár nem kifejezetten javas fórum, de van rajta pár javahoz értő: hup
Ez meg nem igazán forgalmas: javaforum
Egyébként swinges kérdésekre ezeken a helyeken sem kapsz túl sok érdemi választ. Swing, AWT mind halott, amire ezeket az apikat használták, abban már a .NET vonal erősebb. Ami java vonalon pörög az a spring, hibernate, seam, richfaces, jsp, jsf. A többibe szerintem ne ölj túl sok energiát.

[ Szerkesztve ]

(#1939) x123456 válasza gygabor88 (#1938) üzenetére


x123456
aktív tag

Köszi, a javaforum még halottabb, mint a prog.hu, a hup meg... hát izé... bocs, de ahol számomra ismeretlen emberek IRL adatokat követelnek a regisztrációhoz (pár hónapja trey még ehhez kötötte a regisztrációt, nem hiszem, hogy ez változott volna), oda kösz, de inkább nem.
Tképp nem is azért kerestem volna forgalmasabb helyet, hogy az én kérdéseimre kapjak választ, inkább arra lettem volna kíváncsi, hogy az élesben dolgozó programozóknál milyen problémák merülnek fel.

(#1940) Land


Land
veterán

Van olyan javas lejátszó telefonra, amely az AC3-at tudja kezelni?

Pixel 8 8/128 Gb | Sendiy M2 & KZ ED9 & QCY C13 és C17 | Citroen C5 Tourer 3.0 V6 HDI Exclusive

(#1941) Karma válasza Land (#1940) üzenetére


Karma
félisten

Java ME-vel lehetetlen megfelelo sebesseget elerni egy ilyen dekodolashoz. Felejtos.

Masik tema: x123456 szerintem nezz utana az SWT-nek, en nem ismerem, de sokkal ertelmesebbnek tunik a Swingeknel. Mondjuk en a kovetkezo hobbi-ismerkedesnek a Vaadint szemeltem ki, meg majd a ZK toolkitet,

“All nothings are not equal.”

(#1942) x123456 válasza Karma (#1941) üzenetére


x123456
aktív tag

Köszi, asszem eljött a pillanat, amikor feladom az egészet.
Játéknak túl bonyolult, gyakorlati haszna a vele való foglalkozásnak meg gyakorlatilag semmi.

(#1943) dawe1337


dawe1337
csendes tag

Hali!
Kaptam egy feladatot az egyetemen, mégpedig egy webshop kedvezménykezelését kell szimulálni egy servlettel, olyan szinten szabad kezet kaptam a feladathoz, hogy pl. a terméklistát én adom meg, a kedvezménytípusokat is (pl. 2-t fizet 3-at kap stb.)
A feladat konkrétan az, hogy "A servlet kérje be egy űrlapon termékenként a termékek darabszámát. A válaszban jelenítse meg az
eredeti űrlapot, a megadott darabszámokkal, ez alá írja ki a kosár eredeti árát, kedvezményes árát és a kedvezménytípus nevét".

Nos sajnos eléggé gyerekcipőben járok servletek terén, az idő pedig nagyon szorít, ha valaki
lenne olyan kedves, segítőkész és egy nagyon alap forráskódot vagy legalább egy-két tippet, kis segítséget az elinduláshoz adna, azt nagyon megköszönném!

(#1944) Peter Kiss


Peter Kiss
senior tag
LOGOUT blog

Sziasztok!

Adott egy double szám. Ezt kell kiírni különféle módokon, például:

000.00
EGÉSZRÉSZ valami_szöveg TÖRTRÉSZ

Ezt hogyan tudom megtenni? A két részt meg tudom én is kapni, de hogyan tudom így formázni? RegEx-szel próbáltam, nagyjából jó, de a nullák számával nem lehet szabályozni, milyen hosszan írja ki a szám adott részét. DecimalFormat meg jó lenne, ha csak simán egy számot kellene kiírni, de a fent szereplő második példát nem tudtam kivitelezni vele.

Köszi!

(#1945) Lortech válasza Peter Kiss (#1944) üzenetére


Lortech
addikt

[link]

Thank you to god for making me an atheist

(#1946) Parameter


Parameter
csendes tag

Sziasztok!
JOptionPane.showMessageDialog(null, "A tömb elemei" + ????,
"Eredmény:",JOptionPane.PLAIN_MESSAGE );

Szeretném kiírni az ablakba egy több dimenziós tömb értékeit!
Mi erre a módszer JAVA-ban?

Köszönöm!

(#1947) Lortech válasza Parameter (#1946) üzenetére


Lortech
addikt

Nem sok lehetőség van, végig kell rajta iterálnod és összeszedni az elemeket.

Thank you to god for making me an atheist

(#1948) Parameter válasza Lortech (#1947) üzenetére


Parameter
csendes tag

public class Tomb {
public static void main(String[] args)
{

int[][] tomb = new int[10][5]; // 10 tömbből álló tömb
int szamlalo = 9;

for (int i = 0; i < tomb.length; i++)
{

for (int j=0; j < tomb[i].length; j++)
tomb[i][j] = ++szamlalo;
}

for (int i=0; i < tomb.length; i++)
{
for (int j=0; j < tomb[i].length; j++)
System.out.print( tomb[i][j] + " " );

System.out.println( );



}

JOptionPane.showMessageDialog(null, "A tömb elemei: " + tomb,
"Eredmény",JOptionPane.PLAIN_MESSAGE );

Eredmény:
10 11 12 13 14
15 16 17 18 19
20 21 22 23 24
25 26 27 28 29
30 31 32 33 34
35 36 37 38 39
40 41 42 43 44
45 46 47 48 49
50 51 52 53 54
55 56 57 58 59

Ebben az esetben, hol és hogy tudom megcsípni ciklussal az elemeket, hogy azokat kiírhassam egy ablakba? Nem látom át most ezt... :W

[ Szerkesztve ]

(#1949) Lortech válasza Parameter (#1948) üzenetére


Lortech
addikt

Ahol kiíratnád őket, összefűzöd őket egy stringbe (v. stringbufferbe)

A megadott kódból kiindulva:

StringBuffer sb = new StringBuffer();
for (int i = 0; i < tomb.length; i++) {
for (int j = 0; j < tomb[i].length; j++)
{
sb.append(tomb[i][j]).append(" ");
}
sb.append(System.getProperty("line.separator"));
}
System.out.print(sb);

(nyilván ezesetben az első ciklusban is megtehető lenne, de gondolom valamit kezdeni is akarsz az elemekkel majd)

Thank you to god for making me an atheist

(#1950) Parameter válasza Lortech (#1949) üzenetére


Parameter
csendes tag

Szia!

Igen, ez az ez kellett nekem! ;)

Köszönöm!

Útvonal

Fórumok  »  Szoftverfejlesztés  »  Java programozás (kiemelt téma)
Copyright © 2000-2024 PROHARDVER Informatikai Kft.