-
Anonim
Hej!
Wlasnie probuje stworzyc pod java cos na ksztalt konsoli (cos a la terminal pod linuksem). Pole wpisywania komentarza umiescilem jako TextField, a output z komputera w TextArea. Niestety niebardzo wiem jak sprawic zeby to poprawnie dzialalo - jezeli wpisze w konsole jakas komende z parametrem, to nie wiem jak je oddzielic i poprawnie zinterpretowac. Jezeli ktos a jakiekolwiek sugestie to bede bardzo wdzieczny.
pozdrawiam
wojtek -
KosciaK
Zerknij sobie do źródeł takiego BeanShella
Ekspertem nie jestem ale...
Jak wpisujesz "komenda parametr1 parametr2" to parametry od komendy są czymś oddzielone. Tu spacją. Więc możemy wykorzystać regex do splitowania wpisanego Stringa czy od razu wyławiania potrzebnych elementów -
george
Albo zajrzec do zrodel programow w C - tam jest taka funkcja ktora wszyscy kopiuja ktora zajmuje sie tylko rozbiciem linii komendy na opcje ( hehe nie pamietam jaksie nazywa)
Albo tokenizer, albo splitujesz i patrzysz czy masz np - lub cyz pasuje do jakiegos slowa kluczwego. -
YouCan'tGoWrongWithStretchyPants
to prawda, jest w C libarg, ale mam wrazenie, ze ona zajmuje sie odwrotnym problemem: jak przechwycic rozne parametry i dostac je w zrozumialem formie, a nie jak je przekazac aplikacji, bo o to chyba chodzi koledze.
libarg pozwala np. interpretowac takie parametry jak -uroot, --user=root itd.
jesli chodzi o oryginalny problem, to powiedzialbym, ze wszystko zalezy od tego, jak bardzo skopmlikowane reguly chcemy zaimplementowac. jesli tylko cos w stylu
komenda argument1 argument2 "argument ze spacjami"
to mozna to zrobic recznie.
shelle potrafia duzo duzo wiecej, ale moze wcale nie ma takiej potrzeby w tym przypadku?
-
-
Anonim
Generalnie chodzi o to, ze pisze gre w scrabble, ktora MUSI byc ubslugiwana przy pomocy konsoli (tzn konsoli ktora sam zakoduje). Chodzi i to zeby uzytkownik mogl wpisac komendy typu:
-umiescKlocek(char litera, int xcoord, int ycoord)
-zapiszGRe(nazwapliku)
-zaladujGre(nazwapliku)
-nowagra
-itp itd
chodzi wiec o dosyc rozne komendy. A czy ktos orientuje sie jak zakodowac taka 'prawdziwa' konsole - taka gdzie tekst po wpisaniu w textfield idzie do text area i wypycha w gore to co bylo tam napisane wczesniej?
wielkie dzieki za wszelkie sugestie
pozdrawiam
wojtek -
george
nie wiem czy jest juz taki komponent ktory tak robi. jesli nei to poprostu rozszerzasz sobie textaerea dodajesz StringBuffera np ktory kontroluje co ma byc wyswietlone -> dodajesz na poczatku usuwasz na koncu i wyswietlasz, tyle. Przynajmniej tak mi sie wydaje ze to najprostszy sposob zrobienia tego, jesli ktos zna inny to :) -
KosciaK
Komendę masz przed "(" lub jeśli nie ma nawiasów, argumenty pomiędzy "(" a ")", oddzielone ", " więc nie ma kłopotu z wyciągnięciem danych(nazwa metody i String[] z argumentami). Klasa String i metody split, substring, charAt, startsWith, endsWith i jazda. Korzystając z regexp'ów pewnie też da radę.
-
Anonim
Sorry, wlasnie rzucilem oko na projekt i i output konsoli chce zrobic jako JLabel - czy to dobry pomysl? -
Dzemus
>Wojtek napisał
>Sorry, wlasnie rzucilem oko na projekt i i output konsoli
>chce zrobic jako JLabel - czy to dobry pomysl?
Zdecydowanie zły:]
Użyj JTextArea, albo najlepiej JTextPane - taką konsolę już kiedyś pisałem, dawno temu. I z tego co pamiętam, to umieściłem JTextPane'a w JScrollPane i to był output konsoli. JTextField zaraz pod tym robił za linię poleceń. Do niego podłączyłem ActionListenera, który na wciśnięcie entera przepisywał linię na koniec JTextField'a i chyba zapewniał przewinięcie scroll'a opakowującego JTextPane'a na sam koniec... -
Ja nie istnieje (FURBY)
- Przeglądaj grona w kategorii Internet i Komputery
- Przeglądaj grona w okolicy Warszawa
- Załóż własne grono tematyczne
- Zostań moderatorem
Podobne Tematy
|
|
Wszystko co związane z programowaniem w Java (J2EE, JSP, JDBC, itd) test
Miejsca grona (1)
-
Kino Luna ul. Marszałkowska, Warszawa
www.kinoluna.pl kino.luna@maxfilm.com.pl 22 621 78 28
- Dodaj miejsce

