Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование > Java

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 03.11.2007, 15:23   #1
evrei
Guest
 
Сообщений: n/a
По умолчанию помогите с кодом

нужна помощ, не получается написать код


вот что надо зделать:

С Slidern цвет заднего плана наверху лежащего Panels изменяется.
С 3 Slidern можно устанавливать цветные компоненты RGB.
Установленная сумма будет показана в текстовом поле.
Производимый/набронный вручную ввод суммы в текстовые поля изменяет цвет заднего плана и позицию соответствующего Sliders.


вот что зделал я и что не ххочет работаь как надо:
Код:
package SwingLayout;
 
import java.awt.Color; 
import java.awt.GridBagConstraints; 
import java.awt.GridBagLayout; 
import java.awt.Insets; 
import javax.swing.Icon; 
import javax.swing.JLabel; 
import javax.swing.JSlider; 
import javax.swing.JSpinner; 
import javax.swing.SpinnerNumberModel; 
import javax.swing.UIManager; 
import javax.swing.colorchooser.AbstractColorChooserPanel; 
import javax.swing.colorchooser.ColorSelectionModel; 
import javax.swing.event.ChangeEvent; 
import javax.swing.event.ChangeListener; 

public class ha3 extends AbstractColorChooserPanel 
{ 
public String        getDisplayName() 
{ 
return UIManager.getString("ColorChooser.rgbNameText"); 
} 
public int        getMnemonic() 
{ 
return getIntValue("ColorChooser.rgbMnemonic", -1); 
} 
public int        getDisplayedMnemonicIndex() 
{ 
return getIntValue("ColorChooser.rgbDisplayedMnemonicIndex", -1); 
} 
public Icon        getSmallDisplayIcon() 
{ 
return null; 
} 
public Icon        getLargeDisplayIcon() 
{ 
return null; 
} 
protected void        buildChooser() 
{ 
setName("color-chooser-rgb"); 
Color color = getColorFromModel(); 
setLayout(new GridBagLayout()); 

// R,G,B,A 
buildRow(        RED, 
RED_NAME, 
"ColorChooser.rgbRedText", 
"ColorChooser.rgbRedMnemonic", 
color.getRed()); 
buildRow(        GREEN, 
GREEN_NAME, 
"ColorChooser.rgbGreenText", 
"ColorChooser.rgbGreenMnemonic", 
color.getGreen()); 
buildRow(        BLUE, 
BLUE_NAME, 
"ColorChooser.rgbBlueText", 
"ColorChooser.rgbBlueMnemonic", 
color.getBlue()); 
buildRow(        ALPHA, 
ALPHA_NAME, 
"Alpha", 
'A', 
color.getAlpha()); 
} 

protected void        buildRow(int row, String name, String label, String mnemonic, int value) 
{ 
buildRow(row, name, UIManager.getString(label), UIManager.getInt(mnemonic), value); 
} 

// CSOFF
protected void        buildRow(int row, String name, String label, int mnemonic, int value) 
{ 
// widgets 
JLabel rowLabel = new JLabel(label); 
rowLabel.setDisplayedMnemonic(mnemonic); 
JSlider slider = new JSlider(JSlider.HORIZONTAL, MIN_VALUE, MAX_VALUE, value); 
slider.setName("color-chooser-rgb-slider-" + name); 
slider.setMajorTickSpacing(85); 
slider.setMinorTickSpacing(17); 
slider.setPaintTicks(true); 
slider.setPaintLabels(true); 
slider.addChangeListener(_listener); 
slider.putClientProperty("JSlider.isFilled", Boolean.TRUE); 
JSpinner spinner = new JSpinner( 
new SpinnerNumberModel(value, MIN_VALUE, MAX_VALUE, 1)); 
spinner.setName("color-chooser-rgb-spinner-" + name); 
spinner.addChangeListener(_listener); 

_rgbaSliders[row] = slider; 
_rgbaSpinners[row] = spinner; 

// widgets und panel 
Insets insets = new Insets(2, 2, 2, 2); 
GridBagConstraints constraints = new GridBagConstraints(0, row, 1, 1, 
0.0, 0.0, 
GridBagConstraints.WEST, 
GridBagConstraints.HORIZONTAL, 
insets, 
0, 0); 
add(rowLabel, constraints);
constraints.gridx = 2; 
add(spinner, constraints); 
constraints.gridx = 1; 
constraints.weightx = 1.0; 
add(slider, constraints); 
} 

// CSON

public void updateChooser() 
{ 
if (!_isAdjusting) 
{ 
_isAdjusting = true; 
setColor(getColorFromModel()); 
_isAdjusting = false; 
} 
} 

static protected int        getIntValue(Object key, int defaultValue) 
{ 
Object value = UIManager.get(key); 
if (value instanceof Integer) 
{ 

return ((Integer) value).intValue(); 
} 
if (value instanceof String) 
{ 

// CSOFF
try 
{ 
return Integer.parseInt((String) value); 
} 
catch (NumberFormatException nfe) 
{ 

} 

// CSON
} 
return defaultValue; 
} 

private class ValueListener implements ChangeListener 
{ 
public void stateChanged(ChangeEvent e) 

{ 
 if (_isAdjusting) 
{ 
return; 
} 
int red; 
int green; 
int blue; 
int alpha; 
if (e.getSource() instanceof JSlider) 
{ 
red = _rgbaSliders[RED].getValue(); 
green = _rgbaSliders[GREEN].getValue(); 
blue = _rgbaSliders[BLUE].getValue(); 
alpha = _rgbaSliders[ALPHA].getValue(); 
} 
else 
{ 
red = ((Integer) _rgbaSpinners[RED].getValue()).intValue(); 
green = ((Integer) _rgbaSpinners[GREEN].getValue()).intValue(); 
blue = ((Integer) _rgbaSpinners[BLUE].getValue()).intValue(); 
alpha = ((Integer) _rgbaSpinners[ALPHA].getValue()).intValue(); 
} 
ColorSelectionModel model = getColorSelectionModel(); 
if (model instanceof AlphaColorSelectionModel) 
{ 
((AlphaColorSelectionModel) model).setAlpha(alpha, false); 
} 
model.setSelectedColor(new Color(red, green, blue)); 
} 
} 

protected void        setColor(Color newColor) 
{ 
setColor(RED, newColor.getRed()); 
setColor(GREEN, newColor.getGreen()); 
setColor(BLUE, newColor.getBlue()); 
setColor(ALPHA, newColor.getAlpha()); 
} 

protected void        setColor(int row, int value) 
{ 
if (_rgbaSliders[row].getValue() != value) 
{ 
_rgbaSliders[row].setValue(value); 
} 
if (((Integer) _rgbaSpinners[row].getValue()).intValue() != value) 
{ 
_rgbaSpinners[row].setValue(new Integer(value)); 
} 
} 

protected final ChangeListener _listener = new ValueListener(); 
protected final JSlider[]      _rgbaSliders = new JSlider[NUM_CHANNELS]; 
protected final JSpinner[]     _rgbaSpinners = new JSpinner[NUM_CHANNELS]; 
private boolean                _isAdjusting = false; 

static final private String  RED_NAME = "rot"; 
static final private String  GREEN_NAME = "grьn"; 
static final private String  BLUE_NAME = "blau"; 
static final private String  ALPHA_NAME = "alpha"; 
static final private int RED = 0; 
static final private int GREEN = 1; 
static final private int BLUE = 2; 
static final private int ALPHA = 3; 
static final private int NUM_CHANNELS = 4; 
static final private int MIN_VALUE = 0; 
static final private int MAX_VALUE = 255; 
}

Последний раз редактировалось evrei; 03.11.2007 в 15:26..
  Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама:


Старый 20.07.2008, 12:26   #2
Buchos
Неактивный пользователь
 
Пол:Мужской
Регистрация: 15.03.2007
Сообщений: 11
Репутация: 1
По умолчанию Ответ: помогите с кодом

в swing есть готовый color chooser
Buchos вне форума
 
Ответить с цитированием Вверх
Старый 05.09.2008, 10:36   #3
Lenin
Неактивный пользователь
 
Регистрация: 05.09.2008
Сообщений: 3
Репутация: 0
По умолчанию Re: Ответ: помогите с кодом

Цитата:
Сообщение от Buchos Посмотреть сообщение
в swing есть готовый color chooser

Помоему ты путаешь!! Посмотри внимательнее на код!!
Lenin вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ПОМОГИТЕ С КОДОМ плиз! mdk PHP 5 14.03.2010 00:10
Помогите с компонентами или кодом для PARADOX clear2121 Borland C++ Builder 0 08.01.2010 17:20
Помогите с кодом, цвет ссылки ArtG Вeб Дизайн 8 30.01.2008 11:21
Помогите с регистрационным кодом для программы FastStone Capture 5,5 Konstantin71 Архив 2 18.06.2007 17:31
помогите с кодом armag Вeб Дизайн 49 17.12.2006 22:39

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 03:08. Часовой пояс GMT +3.


Copyright ©2004 - 2026 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.03954 секунды с 11 запросами