powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JFC&Swing: как регулировать размер фрейма !?
14 сообщений из 14, страница 1 из 1
JFC&Swing: как регулировать размер фрейма !?
    #33407786
vladimir nabok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В этой технологии я человек новый, и ну НИКАК у меня не выходит зафиксить размер фрейма (основного или интернал).
Вот код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
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.
 import  javax.swing.JInternalFrame;
 import  javax.swing.JDesktopPane;
 import  javax.swing.JMenu;
 import  javax.swing.JMenuItem;
 import  javax.swing.JMenuBar;
 import  javax.swing.JFrame;
 import  javax.swing.KeyStroke;
 import  javax.swing.JLabel;
 import  java.awt.event.*;
 import  java.awt.*;
 import  javax.swing.JPanel;


 public   class  SomeJunkSwing  extends  JFrame  implements  ActionListener{
JDesktopPane desktop_;
	 public  SomeJunkSwing(){
		desktop_ =  new  JDesktopPane();
		JFrame main_frame =  new  JFrame();
		SomeJIntFrame subframe1 =  new  SomeJIntFrame();
		JPanel jpint =  new  JPanel();
		jpint.setSize( 100 ,  100 );
		subframe1.getContentPane().add(jpint);
		setContentPane(desktop_);
		main_frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		subframe1.pack();
		subframe1.setVisible(true);
		main_frame.getContentPane().add(subframe1);
		main_frame.pack();
		main_frame.setVisible(true);
	}
	
	 public   static   void  main(String[] args){
		javax.swing.SwingUtilities.invokeLater(
			 new  Runnable(){
				 public   void  run(){
					createAndShowGui();
				}
			}
		);
	}
	
	
	 private   static   void  createAndShowGui(){
		JFrame.setDefaultLookAndFeelDecorated(true);
		SomeJunkSwing sj =  new  SomeJunkSwing();
	}
	
	
	 public   void  actionPerformed(ActionEvent e){
		
		System.out.println("event handled..");
	}
}
здесь я уже пытаюсь это сделать путем фикса размера встаиваемой панели (но все-равно не выходит).
ПРОБОВАЛ использовать someframe.setSize(), someframe.setBounds(). Ни хрена не идет. В чем же ответ, а?
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33407804
Liner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
setResizable(false) ?
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33407829
Я
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Я
Гость
main_frame.pack()
Вот эту строку уберите из кода.
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33407887
vladimir nabok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
to Liner: нигде такого параметра не встречал. нужно пробовать..
to Я: как это убрать? это ж нужно , я так понимю, для того, чтобы фрейм собрал все те параметря в кучу.. ну ок, попробую и этот вариант.
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33407949
Liner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
main_frame.setResizable(false) - нельзя будет растягивать и сжимать фрейм

main_frame.pack() - The pack method sizes the frame so that all its contents are at or above their preferred sizes. An alternative to pack is to establish a frame's size explicitly by calling setSize or setBounds (which also sets the frame's location). In general, using pack is preferable to calling setSize, since pack leaves the frame's layout manager in charge of the frame's size, and layout managers are good at adjusting to platform dependencies and other factors that affect component size взял отсюда
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33410013
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Желаемый размер задается через setPrefferedSize()

примерно так как на примере ниже

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
 import  javax.swing.*;
 import  java.awt.*;

 public   class  SomeJunkSwing  extends  JFrame {

		 public  SomeJunkSwing(){
		 super ("Заголовок");
		//--- указать желательный размер фрейма
		setPreferredSize( new  Dimension( 600 ,  600 ));
		Container cp = getContentPane();
		JPanel jpint =  new  JPanel();
		jpint.setSize( 200 ,  200 );
		//--- Указать желаемый размер панели
		jpint.setPreferredSize( new  Dimension( 200 , 200 ));
		cp.add(jpint);
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
	
	 public   static   void  main(String[] args){
		SomeJunkSwing someJunkSwing =  new  SomeJunkSwing();
		someJunkSwing.pack();
		someJunkSwing.setVisible(true);
	}
	
}

PS. А Ваш код даже не компилится, а выдает вот такую бяку

> "c:\Program Files\Java\jdk1.5.0_05\bin\javac.exe" SomeJunkSwing.java
SomeJunkSwing.java:19: cannot find symbol
symbol : class SomeJIntFrame
location: class SomeJunkSwing
SomeJIntFrame subframe1 = new SomeJIntFrame();
^
SomeJunkSwing.java:19: cannot find symbol
symbol : class SomeJIntFrame
location: class SomeJunkSwing
SomeJIntFrame subframe1 = new SomeJIntFrame();
^
2 errors

> Terminated with exit code 1.
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33410416
vladimir nabok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
еще бы, я там использовал свой внутренний клас, забыл заменить на стандартный jinternalframe.
спасибо, действительно ::pack() ставить не нужно было, теперь с размерами все ок.

Но теперь другой ламерский вопрос. Даже два:
1. нужно мне очень как-то регулировать титульную панель фрейма. в смысле, не только заголовок (его-то вообще не будет) , ее толщину, наличие или отсутствие вообще. это как-то можно сделать?
2. и вообще, правильно ли я использую фреймы для цели разделения всей рабочей области на несколько зависимых областей (будет часть для простого кнопочного меню, основная рабочая часть и место для меседжей), или это лучше чем-то другим сделать?
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33410476
Liner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. не понятно что значит "титульную панель фрейма"?
2. IMHO должно быть так - рабочая область это у тебя JFrame, а остальное пространство разбивай на панели которые компонуй как тебе надо с помощью LayoutManagerов, а на панелях размещай кнопки, мессаги и все что нужно.

JInternalFrame используется обычно когда у тебя mdi приложение
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33410689
vladimir nabok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
автор1. не понятно что значит "титульную панель фрейма"?
ну это типа [title]Какая-то надпись[/title] в хтмл, там, где она отображается.

автор2. IMHO должно быть так - рабочая область это у тебя JFrame, а остальное пространство разбивай на панели которые компонуй как тебе надо с помощью LayoutManagerов, а на панелях размещай кнопки, мессаги и все что нужно.

Панелями? Может быть. Только мне нужно обеспечить между ними взамодействие. Событие на одной из них влечет следствие на всех остальных (ну и на ней самой). Еще не знаю, как это организовать, поэтому, по аналогии с хтмл-страницей, решил использовать фреймы (хотя общего в хтмл- и жава- фреймах, видимо, только концепция :) ).
То-есть, особых проблем быть не должно в использовании панелей для описаной цели?
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33410904
Liner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вам наверное что-то типа этого почитать надо, тогда все станет понятно
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33411163
vladimir nabok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, что-то типа этого я читал. Понятия про технологические средства есть.
Но ведь там нету даже хоть бы чуть похожей нужной реализации. Там же не написано , что в даном случае лучше , а чего лучше не использовать. Поэтому я и сдесь, спрашиваю у знающих людей.
Хотя, вобщем то, это не столь существенно, потому как все равно приду к нужной реализации, хотя и позже, если без чей-либо помощи.
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33411319
Ermak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Liner Вам дал совершенно правильную ссылку.
Еслы Вы это все внимательно изучите, то сможите самостоятельно реализовать нужный интерфейс.

Только не торопитесь говорить, что все это уже проштудировали.
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33413034
vladimir nabok
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да нет , конечно , только то , что нужно было , и то никак не проштудировал , а просмотрел. говорю ж, только понятие и есть.
еще есть вопрос: как можно регулировать размер , теперь уже, панели? вчера очень много времени ушло , много попутных вещей пришлось осязать -- а этого не вышло.

JPanel jp = new JPanel();
jp.setBounds(0,0,10,20);
somekarkaspanel.add(jp); //эта уже с каким-то лейаут-менеджером
...
main_frame_window.getContentPane.add(somekarkaspanel);

так не выходит. добавляемая панель (jp) занимает собой всю ширину (или высоту) somekarkaspanel. Если добавить вторую - разделяют пространство пополам.
но нужно задать неравные размеры.
?
...
Рейтинг: 0 / 0
JFC&Swing: как регулировать размер фрейма !?
    #33413073
Liner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JFC&Swing: как регулировать размер фрейма !?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]