UltraB Μάϊος 5, 2017 Author #41 Μάϊος 5, 2017 Υπάρχει κάποιος "έξυπνος" τρόπος για μορφοποίηση κειμένου; Είναι κάπως πχ αν θες να κάνεις το παρακάτω κάμποσες φορές: asd: qwerty, asdsafsafe asdasdas
nucleus Μάϊος 5, 2017 #42 Μάϊος 5, 2017 Ναι με css. Oh wait java app είναι άρα όχι αλλά μπορείς να επιλέξεις πολλαπλά controls και να βάλεις πχ γραμματοσειρά και κάποια κοινά appearance properties τα ίδια σε όλα.
UltraB Μάϊος 30, 2017 Author #43 Μάϊος 30, 2017 Έχω ένα board 10x10 από κουμπιά και δύο πιόνια που θα μετακινούνται μέσα σε αυτό. Ποιος είναι ο καλύτερος τρόπος να τα μεταφέρω από θέση σε θέση;
nucleus Μάϊος 31, 2017 #44 Μάϊος 31, 2017 LOL? Τι 10χ10 απο κουμπιά? 100 JButtons σε ένα JWindow? Να υποθέσω με ονόματα JButton1...JButton100? Δεν ανεβάζεις ένα screenshot? αυτό πρέπει να το δω.
UltraB Μάϊος 31, 2017 Author #45 Μάϊος 31, 2017 buttons = new JButton[SIZE]; buttons[num] = new JButton(); ..................
UltraB Μάϊος 31, 2017 Author #47 Μάϊος 31, 2017 πριν 1 ώρα, το μέλος nucleus έγραψε: Screenshot δεν βλέπω. Τα πιόνια πως μετακινούνται? Εε σε αυτό ζητάω να μου δώσετε μια ιδέα. Εκεί είναι το πρόβλημα, στο πως θα μετά κινούνται. PS: Δεν είμαι σπίτι.
nucleus Μάϊος 31, 2017 #48 Μάϊος 31, 2017 Θα πρέπει να δείχνει animation? αν ναι δεν έχω ιδέα πως μπορείς να το κάνεις σε java. Αν όχι υπάρχει κάποιο "βήμα" για την μετακίνηση? πχ κινούνται πάντα ανα 1 ή κάποιο άλλο αριθμό τετραγώνων κάθε φορά? Επίσης μπορεί να μετακινηθούν διαγώνια ή όχι?
UltraB Μάϊος 31, 2017 Author #49 Μάϊος 31, 2017 πριν 58 λεπτά, το μέλος nucleus έγραψε: Θα πρέπει να δείχνει animation? αν ναι δεν έχω ιδέα πως μπορείς να το κάνεις σε java. Αν όχι υπάρχει κάποιο "βήμα" για την μετακίνηση? πχ κινούνται πάντα ανα 1 ή κάποιο άλλο αριθμό τετραγώνων κάθε φορά? Επίσης μπορεί να μετακινηθούν διαγώνια ή όχι? Όχι, δεν θα υπάρχει animation, νομίζω ότι δεν αξίζει τον κόπο και τον χρόνο στην προκειμένη περίπτωση. Τα πιόνια θα μετακινούνται ανάλογα τι θα δείξει το ζάρι. Διαγώνια όχι, αν και νομίζω αυτό αφορά του animation. Εφόσον δεν θα υπάρχει δεν μας απασχολεί ( ; ). Κάτι απλό που σκέφτηκα είναι να προσθέτω και να κάνω remove ένα JLabel ή JPanel, ή μόνο μια εικόνα αλλά δεν λειτουργεί το remove. Τα "κουτιά" του board μπορούν να είναι οτιδήποτε. JPanel, JLabel, JButtons etc. Απλά τα έχω βάλει κουμπιά γιατί απλά κάνω ένα .setText("") γιατί νομίζω ότι βολεύουν καλύτερα σε αυτά που κάνω.
nucleus Ιούνιος 1, 2017 #50 Ιούνιος 1, 2017 Πιο ζάρι ποιές είναι οι τιμές 1-6? Την κατεύθυνση την καθορίζει ο παίχτης? πρέπει απλώς να μετακινηθεί τόσες θέσεις όσες έφερε το ζάρι σε όποια κατεύθυνση θέλει?
UltraB Ιούνιος 1, 2017 Author #51 Ιούνιος 1, 2017 Υπάρχει ένα ζάρι και δίνει από 1 έως 6. Οι παίχτες αρχίζουν από τη θέση 1 και πρέπει να φτάσουν ακριβώς στην 100 (δηλαδή αν είναι στην 97 θα πρέπει να φέρουν ακριβώς 3 αλλιώς ξαναπαίζουν την επόμενη γύρα). Το board πάει έτσι. Βασικά αν δεν υπάρχει animation το μόνο που παίζει σημασία είναι πως θα εξαφανίζεται το πιόνι στον επόμενο γύρο, δηλαδή στην επόμενη κίνηση του παίχτη.
nucleus Ιούνιος 1, 2017 #52 Ιούνιος 1, 2017 Οπότε η κίνηση είναι "γραμμική" απο ότι κατάλαβα ωραία class BoardPoint { bool IsEmpty {get;set;} int rowIndex {get;set;} int columnIndex {get;set;} } το board είναι ένα array απο 100 BoardPoints Μετά έχεις το class Pawn ή Player class Player { BoardPoint currentPosition {get;set;} } Τα dummy classes είναι σε C#. Για το πως θα αναπαραστήσεις το board στο UI εύκολο. JLabels. https://docs.oracle.com/javase/7/docs/api/javax/swing/JLabel.html Αν δεις εκεί στα Methods inherited from class javax.swing.JComponent έχει την https://docs.oracle.com/javase/7/docs/api/javax/swing/JComponent.html#setBackground(java.awt.Color) . Απλώς αποφασίζεις ποιο Color θα είναι το αντίστοιχο empty board point color και ποιο χρώμα αναπαριστά το κάθε πιόνι. Αν θες μπορείς να προστέσεις τα JLabels καρφωτά και όταν αρχικοποιείς τα BoardPoints να βάλεις ένα επιπλέον property που είναι ποιο JLabel το αναπαριστά.
UltraB Ιούνιος 1, 2017 Author #53 Ιούνιος 1, 2017 Δηλαδή αν κατάλαβα καλά να το κάνω αλλάζοντας το χρώμα του JLabel, σωστά; Αν ναι, πάνω στο JLabel μπορεί να υπάρχουν και άλλα objects, πχ μια φωτογραφία. Επίσης αν τύχει και οι δύο παίκτες είναι στο ίδιο σημείο ο δεύτερος θα κρύβει τον πρώτο. PS: Προς το παρόν τα έχω αφήσει JButtons διότι έχω ένα style για τα JLabel που περνάει και στο board αν γίνουν JLabels και δεν το θέλω. Οκ, μπορώ να το φτιάξω αλλά δεν μου έχει τύχει τίποτα παράξενο με τα κουμπιά προς το παρόν, γι αυτό τα είχα αφήσει.
nucleus Ιούνιος 1, 2017 #54 Ιούνιος 1, 2017 (edited) Μπορείς να βάλεις και εικόνες αν θες αντί για JLabels και ανάλογα να φορτώνεις την σωστή απο κάποιο path. 4 θέλει όλες και όλες. Μια για το άδειο board point. Μια για το ένα πιόνι,μια για το άλλο πιόνι και μια για το αν είναι και τα 2 πιόνια. Πόσο καλός είσαι με το Paint? Έγινε επεξεργασία Ιούνιος 1, 2017 από nucleus
UltraB Ιούνιος 1, 2017 Author #55 Ιούνιος 1, 2017 Νομίζω είχα δοκιμάσει στην αρχή με το setBackground. Ξαναδοκιμάζω μια και επανέρχομαι.
UltraB Ιούνιος 3, 2017 Author #57 Ιούνιος 3, 2017 Ξέχασα να αναφέρω ότι φτιάχτηκε και παίζει με το παρακάτω. game.getBoard().getButton(z).add(this.pawnIcon); game.getBoard().getButton(previousPos).remove(this.pawnIcon); previousPos = this.getPosition(true); game.getBoard().refresh();
UltraB Ιούνιος 4, 2017 Author #58 Ιούνιος 4, 2017 Θέλω να προσθέσω έναν timer που απλά θα αυξάνετε ανά δευτερόλεπτα για να μου δείχνει πόση ώρα είναι ο παίχτης στην εφαρμογή. Προς το παρόν ότι έχω δοκιμάσει δεν παίζει ή δεν κάνει αυτό που θέλω. Έχει κάνεις κάτι αντίστοιχο;
nucleus Ιούνιος 6, 2017 #59 Ιούνιος 6, 2017 https://docs.oracle.com/javase/7/docs/api/java/awt/event/WindowListener.html Πρέπει να γράψεις ένα δικό σου custom window listener. Βάλε ένα property στο βασικό παράθυρο της εφαρμογής σου που θα είναι ένα timestamp. Όταν ανοίγει το παράθυρο θα παίρνεις το current timestamp εκείνη την στιγμή και θα το βάζεις στο property. Όταν κλείνει το παράθυρο θα διαβάζεις το property και θα βλέπεις πόσα λεπτά ή δευτερόλεπτα έχουν περάσει από τότε και θα το γράφεις σε ένα αρχείο. Η άλλη λύση είναι να δεις και να χρησιμοποιείς κάποιο logger. Παράδειγμα για window listeners: https://docs.oracle.com/javase/tutorial/uiswing/events/windowlistener.html
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now