ciao volevo sapere se e come posso fare per aumentare lo spazio tra 2 jbutton..![]()
ciao volevo sapere se e come posso fare per aumentare lo spazio tra 2 jbutton..![]()
Dovresti dire innanzitutto quale layout-manager hai usato. Quindi dipende .....Originariamente inviato da the-lele
ciao volevo sapere se e come posso fare per aumentare lo spazio tra 2 jbutton..![]()
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet
Magari prova a postare un po' di codice...Originariamente inviato da the-lele
mmh credo nessun layout-manager..
se poi dici "credo nessun layout-manager" qualcuno ti pone immediatamente la domanda: "sai cosa sono i LayoutManager?" e non credo di sbagliarmi se la risposta è "no"...
A questo punto ti inviterei anche a dare un'occhiata a qualche guida di Java che parli dei componenti grafici, altrimenti ti troverai a scalare una montagna ghiacciata a piedi nudi...
Ciao.![]()
"Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza
beh l'idea di postare il codice non è malaccio...per il resto essendo il mio 3° programma in java non è che ne sappia tantissimo.
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.util.*;
/*XML*/
import org.w3c.dom.*;
import org.xml.sax.*;
import javax.xml.*;
import javax.xml.parsers.*;
import com.sun.org.apache.xerces.internal.parsers.DOMPars er;
import java.io.*;
public class Grafics extends JFrame{
private long tempo_start; //variabile che memorizza il tempo iniziale
private long tempo_fin; //variabile che memorizza il tempo finale
private int max_n; //Variabile in cui memorizziamo il numero di domande massimo;
/*VARIABILI DELLA DOMANDA ATTUALE*/
private boolean sol_a = false;
private boolean sol_b = false;
private boolean sol_c = false;
private boolean sol_d = false;
private int count = 0; //contatore di domande
private int ris = 0; //contatore di risposte esatte
private int cambio = 3; //contatore di cambi domanda
private double ratio ; //percentuale risposte esatte
private JLabel act_dom_s, al, bl, cl, dl, num;
private String cor;
private int fatti[] = new int[1000]; // Array in cui memorizzo le domande giˆ fatte
private int cont_fatti = 0; //contatore che avanza di uno ogni volta che viene inserito un numero nell'array
private boolean fatto = false; //diventa true se viene estratta una domanda fattibile (cio? non giˆ fatta)
/** Creates a new instance of Grafics */
public Grafics(String title) {
super(title); //Titolo
setLocation(112,84); //Posizione
setSize(800,600); //Size
setDefaultCloseOperation(EXIT_ON_CLOSE);
Color bg = Color.orange; //Background color
int minimum = 0;
int maximum = 100;
JProgressBar progress = new JProgressBar(minimum, maximum);
progress.setStringPainted(true);
/*ZONA NORTH*/
JLabel head = new JLabel("QuizJava – v 1.00");
head.setAlignmentX(CENTER_ALIGNMENT);
head.setFont(new Font("Times New roman", Font.PLAIN, 24));
head.setForeground(new Color(0x0000FF));
JPanel panel = new JPanel();
panel.setLayout(new BorderLayout());
panel.setBackground(bg);
Box upper = new Box(BoxLayout.PAGE_AXIS); //Creo il box upper, che metto in posizione north
upper.add(head); //inserisco il testo
panel.add(upper, BorderLayout.NORTH); //aggiungo il box al panel
/*FINE*/
/*ZONA SUD*/
JButton start = new JButton("Nuovo Esame");
start.setContentAreaFilled(false);
start.setBorder(null);
start.setFocusPainted(false);
ImageIcon icon_s = new ImageIcon("images/destra.gif");
start.setIcon(icon_s);
start.setHorizontalTextPosition(SwingConstants.CEN TER);
start.setVerticalTextPosition(SwingConstants.BOTTO M);
start.setBackground(bg);
start.setFont(new Font("Times New roman", Font.PLAIN, 16));
start.setForeground(new Color(0x0000FF));
start.addActionListener(new start_l());
start.setAlignmentX(CENTER_ALIGNMENT);
JButton cambio = new JButton("Cambia Domanda");
cambio.setContentAreaFilled(false);
cambio.setBorder(null);
cambio.setFocusPainted(false);
ImageIcon icon_c = new ImageIcon("images/cambio.gif");
cambio.setIcon(icon_c);
cambio.setHorizontalTextPosition(SwingConstants.CE NTER);
cambio.setVerticalTextPosition(SwingConstants.BOTT OM);
cambio.setBackground(bg);
cambio.setFont(new Font("Times New roman", Font.PLAIN, 16));
cambio.setForeground(new Color(0x0000FF));
cambio.addActionListener(new cambio_l());
cambio.setAlignmentX(CENTER_ALIGNMENT);
JLabel disclaim1 = new JLabel("Copyright (c) 2007, Emanuele Repetti");
disclaim1.setFont(new Font("Times New roman", Font.PLAIN, 20));
disclaim1.setForeground(new Color(0x000000));
disclaim1.setAlignmentX(CENTER_ALIGNMENT);
Box downer = new Box(BoxLayout.PAGE_AXIS);
Box in_downer = new Box(BoxLayout.LINE_AXIS); //Creo un box con layout line_axis da mettere dentro ad upper
in_downer.add(start); //inserisco il tasto per avviare il test
in_downer.add(cambio);
downer.add(in_downer);
downer.add(disclaim1);
panel.add(downer, BorderLayout.SOUTH);
/*FINE*/
/*ZONA WEST*/
num = new JLabel("Domanda 1:");
num.setFont(new Font("Times New roman", Font.PLAIN, 20));
num.setForeground(new Color(0xFF0000));
act_dom_s = new JLabel(""); //Variabile JLabel da modificare quando si cambia domanda.
act_dom_s.setBackground(bg);
JButton a = new JButton("Risposta A");
al = new JLabel(""); //Variabile JLabel da modificare col testo della risp A
bl = new JLabel(""); //Testo risp B
cl = new JLabel(""); //Testo risp C
dl = new JLabel(""); //Testo risp D
a.setBackground(bg);
a.addActionListener(new a_l());
JButton b = new JButton("Risposta B");
b.setBackground(bg);
b.addActionListener(new b_l());
JButton c = new JButton("Risposta C");
c.setBackground(bg);
c.addActionListener(new c_l());
JButton d = new JButton("Risposta D");
d.setBackground(bg);
d.addActionListener(new d_l());
Box west = new Box(BoxLayout.PAGE_AXIS);
west.add(num);
west.add(act_dom_s);
west.add(new JLabel(" "));
west.add(al);
west.add(a);
west.add(new JLabel(" "));
west.add(bl);
west.add(b);
west.add(new JLabel(" "));
west.add(cl);
west.add(c);
west.add(new JLabel(" "));
west.add(dl);
west.add(d);
panel.add(west, BorderLayout.WEST);
/*FINE*/
/*ZONA EST*/
panel.add(progress,BorderLayout.EAST);
//progress.setVisible(false);
/*FINE*/
JScrollPane scroller = new JScrollPane(panel); getContentPane().add(scroller);
setResizable(true);
setVisible(true);
quiz(); //All'avvio estrae la prima domanda e fa partire il tempo
tempo_start = System.nanoTime();
}....
Non so come funziona e cosa fa, ma so che i jButton hanno una propietà "margin", che così a naso posso pensare che setta i margini ;-) per cui se i bottoni sono uno accanto all'altro puoi provare a settare lquesta proprietà del jButton. Può darsi anche che setti le distanze interne dal testo o qualcosa del genere eh, non so...
Altrimenti, se hai installato un IDE che permette di gestire la grafica in modalità WYSIWYG (come il GUI builder di netbeans, giusto per intenderci), basta che clicchi e trascini fino alla posizinoe desiderata ;-) dice che non è sano usare questi mezzi senza imparare cosa cambi realmente nel codice, però funziona ed molto veloce, quindi dipende da quale è il tuo scopo ;-)
public void setMargin(Insets m)Originariamente inviato da shirim
so che i jButton hanno una propietà "margin", che così a naso posso pensare che setta i margini ;-)
Sets space for margin between the button's border and the label.
Quindi hai già capito che non serve a nulla per distanziare due pulsanti.
Andrea, andbin.dev – Senior Java developer – SCJP 5 (91%) • SCWCD 5 (94%)
java.util.function Interfaces Cheat Sheet — Java Versions Cheat Sheet