Как разместить JFrame на TOP_RIGHT?Как разместить JFrame в правом верхнем углу экрана при запуске
Я знаю, что касается центра, и обычный в левом верхнем углу, но как установить верхний правый?
Как разместить JFrame на TOP_RIGHT?Как разместить JFrame в правом верхнем углу экрана при запуске
Я знаю, что касается центра, и обычный в левом верхнем углу, но как установить верхний правый?
В качестве примера из this answer: positioning to the bottom-right, я сделал корректировки, чтобы сделать это появится в верхнем правом углу
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;
import java.awt.Rectangle;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class TopRightFrame {
private void display() {
JFrame f = new JFrame("Top-Right Frame");
f.add(new JPanel() {
@Override // placeholder for actual content
public Dimension getPreferredSize() {
return new Dimension(320, 240);
}
});
f.pack();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice defaultScreen = ge.getDefaultScreenDevice();
Rectangle rect = defaultScreen.getDefaultConfiguration().getBounds();
int x = (int) rect.getMaxX() - f.getWidth();
int y = 0;
f.setLocation(x, y);
f.setVisible(true);
}
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
new TopRightFrame().display();
}
});
}
}
perfect Я нашел это здесь только сейчас, я изменил некоторые слова в моем поиске, и я получил его. Я вижу y = 0;) Большое вам спасибо; * – user2582318
Опасайтесь, не у всех пользователей есть панель задач внизу экрана .... – MadProgrammer
Вы можете просто изменить вас существующий JFrame конструктор вставки в следующем коде:
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice defaultScreen = ge.getDefaultScreenDevice();
Rectangle rect = defaultScreen.getDefaultConfiguration().getBounds();
int x = (int) rect.getMaxX() - this.getWidth();
int y = 0;
this.setLocation(x, y);
this.setVisible(true);
т.е. так выглядело бы примерно так:
public class NewJFrame extends javax.swing.JFrame {
/**
* Creates new form NewJFrame
*/
public NewJFrame() {
initComponents();
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice defaultScreen = ge.getDefaultScreenDevice();
Rectangle rect = defaultScreen.getDefaultConfiguration().getBounds();
int x = (int) rect.getMaxX() - this.getWidth();
int y = 0;
this.setLocation(x, y);
this.setVisible(true);
}
Вы даже попробовали [это] (http : //www.google.com) ??? – csmckelvey
не помогло, но спасибо – user2582318