Форум программистов, компьютерный форум, киберфорум
Java ME (J2ME)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/37: Рейтинг темы: голосов - 37, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 27.12.2008
Сообщений: 35

Как изменить стиль формы и вообще всех объектов на свой стиль?

12.08.2009, 15:09. Показов 7325. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Собственно вопрос в том как изменить стиль формы и вообще всех объектов на свой стиль?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.08.2009, 15:09
Ответы с готовыми решениями:

Меняем стиль элементов управления на свой стиль
Меняем стиль элементов управления на свой стиль. Может кому пригодится. watch?v=0EI9_KhHeN0&

Как изменить стиль формы?
Нужно изменить стиль формы, кнопок и т.д. как например здесь: Раньше видел, что их большое разнообразное количество. И для Visual...

Как изменить вид формы - стиль, заголовок и т.д
Здравствуйте,объяснте пожалуйста как на Visual studio(2010) изменить форму(визуально), чтоб вместо стандартной была другая(другого цвети...

8
 Аватар для Mecid
683 / 232 / 16
Регистрация: 15.10.2007
Сообщений: 1,246
12.08.2009, 15:56
что значит стиль?
0
0 / 0 / 0
Регистрация: 27.12.2008
Сообщений: 35
13.08.2009, 13:42  [ТС]
К примеру у меня при запуске эмулятора заголовок серого цвета, как изменить цвет и форму заголовка если можно.
0
0 / 0 / 0
Регистрация: 27.12.2008
Сообщений: 35
15.08.2009, 08:34  [ТС]
ну к примеру ... создали мы кнопку а она угловатая как изменить её вид?
0
 Аватар для sataniq
0 / 0 / 0
Регистрация: 05.01.2011
Сообщений: 3
05.01.2011, 03:08
Тоже очень интересует этот вопрос. Может кто-нибудь подсказать хотя бы в каком направлении копать?
0
эволюционирую потихоньку
 Аватар для TanT
468 / 466 / 91
Регистрация: 30.06.2009
Сообщений: 1,401
05.01.2011, 08:55
ссылки на форумы запрещены, но как-то использовал для своих целей подобный код, найдённый на соседнем форуме
Java
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import java.awt.geom.*;
public class JSwingButton extends JButton
{
 private Paint rolloverHighlight, armedHighlight, borderHighlight, borderShadow;
 private Shape shape, upperBorder, lowerBorder;
 private Stroke borderStroke;
 public JSwingButton(String label, Paint rolloverHighlight, Paint armedHighlight, Paint borderHighlight, Paint borderShadow, Stroke borderStroke)
 {
   super(label);
   setContentAreaFilled(false);
   setRolloverEnabled(true);
   setFocusable(false);
   setRolloverHighlight(rolloverHighlight);
   setArmedHighlight(armedHighlight);
   setBorderHighlight(borderHighlight);
   setBorderShadow(borderShadow);
   setBorderStroke(borderStroke);
   setShape(new Ellipse2D.Double(0.0, 0.0, 100.0, 100.0));
   setUpperBorder(new Arc2D.Double(0.0, 0.0, 100.0, 100.0, 000.0, 180.0, Arc2D.OPEN));
   setLowerBorder(new Arc2D.Double(0.0, 0.0, 100.0, 100.0, 180.0, 180.0, Arc2D.OPEN));
   addComponentListener(new ResizeListener());
 }
 public JSwingButton(String label)
 {
   this(label, null, null, null, null, null);
 }
 public JSwingButton()
 {
   this("", null, null, null, null, null);
 }
 public void setRolloverHighlight(Paint rolloverHighlight)
 {
   Paint oldHighLight = this.rolloverHighlight;
   this.rolloverHighlight = rolloverHighlight;
   if(this.rolloverHighlight == null)
     this.rolloverHighlight = new Color(255, 255, 255, 64);
   firePropertyChange("rolloverHighlight", oldHighLight, this.rolloverHighlight);
 }
 public Paint getRolloverHighlight()
 {
   return rolloverHighlight;
 }
 public void setArmedHighlight(Paint armedHighlight)
 {
   Paint oldHighLight = this.armedHighlight;
   this.armedHighlight = armedHighlight;
   if(this.armedHighlight == null)
     this.armedHighlight = new Color(0, 0, 0, 64);
   firePropertyChange("armedHighlight", oldHighLight, this.armedHighlight);
 }
 public Paint getArmedHighlight()
 {
   return armedHighlight;
 }
 public Shape getShape()
 {
   return shape;
 }
 public void setShape(Shape shape)
 {
   if(shape != null && !shape.equals(this.shape))
   {
     Shape oldShape = this.shape;
     this.shape = shape;
     firePropertyChange("shape", oldShape, shape);
   }
 }
 protected void resizeShapes()
 {
   Dimension size = getSize(new Dimension());
   Rectangle shapeBounds = getBorderStroke().createStrokedShape(shape).getBounds();
   if(shapeBounds.x != 0 || shapeBounds.y != 0)
   {
     AffineTransform transform = AffineTransform.getTranslateInstance( -shapeBounds.x, -shapeBounds.y);
     shape = transform.createTransformedShape(shape);
     upperBorder = transform.createTransformedShape(upperBorder);
     lowerBorder = transform.createTransformedShape(lowerBorder);
   }
   if(shapeBounds.width != size.width || shapeBounds.height != size.height)
   {
     double sx = (double) size.width / (double) shapeBounds.width;
     double sy = (double) size.height / (double) shapeBounds.height;
     AffineTransform transform = AffineTransform.getScaleInstance(sx, sy);
     shape = transform.createTransformedShape(shape);
     upperBorder = transform.createTransformedShape(upperBorder);
     lowerBorder = transform.createTransformedShape(lowerBorder);
   }
 }
 public Shape getUpperBorder()
 {
   return upperBorder;
 }
 public void setUpperBorder(Shape upperBorder)
 {
   Shape oldUpperBorder = this.lowerBorder;
   this.upperBorder = upperBorder;
   firePropertyChange("upperBorder", oldUpperBorder, upperBorder);
 }
 public Shape getLowerBorder()
 {
   return lowerBorder;
 }
 public void setLowerBorder(Shape lowerBorder)
 {
   Shape oldLowerBorder = this.lowerBorder;
   this.lowerBorder = lowerBorder;
   firePropertyChange("lowerBorder", oldLowerBorder, lowerBorder);
 }
 public void setBorderHighlight(Paint borderHighlight)
 {
   Paint oldBorderHighlight = this.borderHighlight;
   this.borderHighlight = borderHighlight;
   if(this.borderHighlight == null)
     this.borderHighlight = UIManager.getColor("Button.light");
   firePropertyChange("borderHighlight", oldBorderHighlight, this.borderHighlight);
 }
 public Paint getBorderHighlight()
 {
   return borderHighlight;
 }
 public void setBorderShadow(Paint borderShadow)
 {
   Paint oldBorderShadow = this.borderShadow;
   this.borderShadow = borderShadow;
   if(this.borderShadow == null)
     this.borderShadow = UIManager.getColor("Button.shadow");
   firePropertyChange("borderShadow", oldBorderShadow, this.borderShadow);
 }
 public Paint getBorderShadow()
 {
   return borderShadow;
 }
 public Stroke getBorderStroke()
 {
   return borderStroke;
 }
 public void setBorderStroke(Stroke borderStroke)
 {
   Stroke oldBorderStroke = this.borderStroke;
   this.borderStroke = borderStroke;
   if(this.borderStroke == null)
     this.borderStroke = new BasicStroke();
   firePropertyChange("lowerBorder", oldBorderStroke, this.borderStroke);
 }
 protected void paintComponent(Graphics g)
 {
   Graphics2D g2 = (Graphics2D) g;
   if(getModel().isArmed())
   {
     g2.setPaint(getArmedHighlight());
     g2.fill(shape);
   }
   else if(getModel().isRollover())
   {
     g2.setPaint(getRolloverHighlight());
     g2.fill(shape);
   }
   super.paintComponent(g);
 }
 protected void paintBorder(Graphics g)
 {
   Graphics2D g2 = (Graphics2D) g;
   g2.setStroke(getBorderStroke());
   if(getModel().isRollover())
   {
     if(getUpperBorder() != null && getLowerBorder() != null)
     {
       g2.setPaint(getBorderHighlight());
       g2.draw(getUpperBorder());
       g2.setPaint(getBorderShadow());
       g2.draw(getLowerBorder());
     }
     else
     {
       g2.setPaint(getBorderShadow());
       g2.draw(getShape());
     }
   }
 }
 public boolean contains(int x, int y)
 {
   return shape.contains(x, y);
 }
 public static void main(String[] args)
 {
   try
   {
     UIManager.setLookAndFeel(UIManager.getInstalledLookAndFeels()[0].getClassName());
   }
   catch(Exception ex)
   {}
   JFrame frame = new JFrame();
   frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
   Container cont = frame.getContentPane();
   cont.setLayout(new GridLayout(1, 0));
   JSwingButton button = new JSwingButton("Button 1");
   cont.add(button);
   button = new JSwingButton("Button 2");
   Dimension d = new Dimension(250, 150);
   button.setPreferredSize(d);
   button.setShape(new RoundRectangle2D.Double(0, 0, d.width, d.height, 100, 100));
   button.setUpperBorder(null);
   button.setLowerBorder(null);
   button.setArmedHighlight(new GradientPaint(0, 0, Color.RED.darker(), d.width, d.height, Color.YELLOW.darker()));
   button.setRolloverHighlight(new GradientPaint(0, 0, Color.RED, d.width, d.height, Color.YELLOW));
   button.setBorderShadow(new GradientPaint(0, 0, Color.GREEN, d.width, d.height, Color.BLUE));
   //button.setBorderStroke(new BasicStroke(5.0f));
   button.setBorderStroke(new BasicStroke(4.0f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_ROUND, 1.0f, new float[] {30.0f, 10.0f, 10.0f, 10.0f}, 0.0f));
   cont.add(button);
   frame.pack();
   frame.setLocationRelativeTo(null);
   frame.show();
 }
 private class ResizeListener implements ComponentListener
 {
   public void componentResized(ComponentEvent e)
   {
     resizeShapes();
   }
   public void componentMoved(ComponentEvent e)
   {}
   public void componentShown(ComponentEvent e)
   {}
   public void componentHidden(ComponentEvent e)
   {}
 }
}
и вот ещё
Java
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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
public class RoundButton extends JButton 
{
    public RoundButton(String label) 
    {
        super(label);
        // These statements enlarge the button so that it 
        // becomes a circle rather than an oval.
        Dimension size = getPreferredSize();
        size.width = size.height = Math.max(size.width, size.height);
        setPreferredSize(size);
        // This call causes the JButton not to paint 
        // the background.
        // This allows us to paint a round background.
        setContentAreaFilled(false);
    }
    // Paint the round background and label.
    protected void paintComponent(Graphics g) 
    {
        if (getModel().isArmed()) {
            // You might want to make the highlight color 
            // a property of the RoundButton class.
            g.setColor(Color.lightGray);
        } 
        else {
            g.setColor(getBackground());
        }
        g.fillOval(0, 0, getSize().width-1, 
        getSize().height-1);
        // This call will paint the label and the 
        // focus rectangle.
        super.paintComponent(g);
    }
    // Paint the border of the button using a simple stroke.
    protected void paintBorder(Graphics g) 
    {
        g.setColor(getForeground());
        g.drawOval(0, 0, getSize().width-1, 
        getSize().height-1);
    }
    // Hit detection.
    Shape shape;
    public boolean contains(int x, int y) 
    {
        // If the button has changed size, 
        // make a new shape object.
        if (shape == null || !shape.getBounds().equals(getBounds())) {
            shape = new Ellipse2D.Float(0, 0, getWidth(), getHeight());
        }
        return shape.contains(x, y);
    }
    // Test routine.
    public static void main(String[] args) 
    {
        // Create a button with the label "Jackpot".
        JButton button = new RoundButton("Jackpot");
        button.setBackground(Color.green);
        // Create a frame in which to show the button.
        JFrame frame = new JFrame();
        frame.getContentPane().setBackground(Color.yellow);
        frame.getContentPane().add(button);
        frame.getContentPane().setLayout(new FlowLayout());
        frame.setSize(150, 150);
        frame.setVisible(true);
    }
}
0
 Аватар для sataniq
0 / 0 / 0
Регистрация: 05.01.2011
Сообщений: 3
06.01.2011, 17:45
TanT, я извиняюсь, а можно чуть подробнее? Не могу понять как использовать этот код..
Это будет отдельный класс или как? (я совсем недавно начал заниматься j2me)
0
0 / 0 / 0
Регистрация: 01.09.2011
Сообщений: 7
14.09.2011, 22:17
Цитата Сообщение от sataniq Посмотреть сообщение
подробнее
может тут http://doc.java.sun.com/DocWeb... columnMain поможет? тоже недавно начал . Перекопал весь форум

Добавлено через 6 минут
Цитата Сообщение от TanT Посмотреть сообщение
public class JSwingButton extends JButton
{
private Paint rolloverHighlight, armedHighlight, borderHighlight, borderShadow;
private Shape shape, upperBorder, lowerBorder;
private Stroke borderStroke;
вроде создаем класс расширяем его тремя....переменными трех типов

Добавлено через 3 минуты
Цитата Сообщение от TanT Посмотреть сообщение
public JSwingButton(String label, Paint rolloverHighlight, Paint armedHighlight, Paint borderHighlight, Paint borderShadow, Stroke borderStroke)
{
super(label);
setContentAreaFilled(false);
setRolloverEnabled(true);
setFocusable(false);
setRolloverHighlight(rolloverHighlight);
setArmedHighlight(armedHighlight);
setBorderHighlight(borderHighlight);
setBorderShadow(borderShadow);
setBorderStroke(borderStroke);
setShape(new Ellipse2D.Double(0.0, 0.0, 100.0, 100.0));
setUpperBorder(new Arc2D.Double(0.0, 0.0, 100.0, 100.0, 000.0, 180.0, Arc2D.OPEN));
setLowerBorder(new Arc2D.Double(0.0, 0.0, 100.0, 100.0, 180.0, 180.0, Arc2D.OPEN));
addComponentListener(new ResizeListener());
}
напоминает конструктор созданого власса

Добавлено через 2 минуты
Цитата Сообщение от TanT Посмотреть сообщение
public JSwingButton(String label)
{
this(label, null, null, null, null, null);
}
public JSwingButton()
{
this("", null, null, null, null, null);
}
перегруженный конструктор

Добавлено через 4 минуты
Цитата Сообщение от yazimma Посмотреть сообщение
setContentAreaFilled(false);
setRolloverEnabled(true);
setFocusable(false);
setRolloverHighlight(rolloverHighlight);
setArmedHighlight(armedHighlight);
здесьhttp://java.sun.com/javame/ref... utton.html расписаны применённые ,если верно мыслю ,методы класса.
Профи подтвердите правильнось моих изложений( для контроля)
0
1 / 1 / 0
Регистрация: 12.07.2011
Сообщений: 6
18.09.2011, 18:19
Раздел о мобильной яве, не понял какого вы приплели Java 2 SE..
Нельзя управлять внешним видом, придется писать собственный GUI в канвасе с блекджеком и..
Ну или юзать чужие: TCUI, LWUIT и т.п.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.09.2011, 18:19
Помогаю со студенческими работами здесь

Как изменить стиль заголовка формы, добавив в него свои кнопки
Вот например у нас есть окно Как осуществить следующее В гугле ничего об этом не нашел(

Можно и изменить стиль отображения класса ListView или придется писать свой контрол
Требуется создать контрол ListViewer. Контролы будут отображаться списком. Требуется: 1)"Подсветска" при наведении. ...

Как задать новый стиль для тега, у которого уже есть стиль
Привет всем. У меня есть вот такая запись в таблице стилей #c_menu li{ list-style:none; padding: 5px 0px; border-bottom: 1px solid...

Как динамически присвоить стиль кнопке, если стиль описан в файле xaml?
Здравствуйте, столкнулся с проблемой: нужно в коде присвоить стиль кнопке. Этот стиль находится в xaml с определённым x:Key. Я в этой...

Как сделать каждому изображению свой стиль
Привет. Есть код img{ transition:0.3s all ease-in; } img:hover{ box-shadow:0px 0px 24px 0px rgba(50, 50, 50, 1); } ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru