Você está aqui: Cards de Cards de Hidrologia |
||
|
||
|
|
||
Java ::: Classes e Componentes ::: JComboBox |
Como retornar a quantidade de itens em um JComboBox do Java SwingQuantidade de visualizações: 9063 vezes |
|
Nesta dica mostrarei como podemos usar a função getItemCount() da classe JComboBox do Java Swing para obtermos a quantidade de itens no controle. Note que usei um botão JButton no exemplo também. Ao clicarmos no botão, uma mensagem JOptionPane.showMessageDialog será exibida contendo a quantidade de itens no JComboBox. Veja o código Java Swing completo para o exemplo:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Estudos extends JFrame{
JComboBox combo;
public Estudos(){
super("A classe JComboBox");
Container c = getContentPane();
c.setLayout(new FlowLayout(FlowLayout.LEFT));
// Cria os itens da lista
String nomes[] = {"Carlos", "Marcelo", "Fabiana",
"Carolina", "Osmar"};
// Cria o JComboBox
combo = new JComboBox(nomes);
// Um botão que permite obter a quantidade de itens
JButton btn = new JButton("Quantidade de itens");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
int quant = combo.getItemCount();
JOptionPane.showMessageDialog(null,
"O JComboBox contém " + quant + " itens");
}
}
);
// Adiciona o JComboBox à janela
c.add(combo);
// Adiciona o botão à janela
c.add(btn);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
PHP ::: Dicas & Truques ::: Programação Orientada a Objetos |
Programação orientada a objetos em PHP - Como usar construtores em suas classes PHPQuantidade de visualizações: 12298 vezes |
|
Muitas vezes precisamos inicializar propriedades de um objeto de uma classe no momento em que este é criado. Para isso podemos usar um método construtor. Um método construtor, que em PHP é definido usando-se __construct() é chamado no exato momento em que efetuamos uma chamada a new. Veja um exemplo no qual exibimos uma mensagem alertando que um objeto de uma classe acaba de ser criado:
<?
class Pessoa{
public function __construct(){
echo "Fui criada";
}
}
$pessoa = new Pessoa;
?>
Execute este código e veja o resultado. Note que um construtor deve, em raríssimas ocasiões, ser marcado com o modificador public. Além disso, um construtor só se torna realmente útil quando o usamos para inicializar as propriedades do objeto recém-criado. Veja:
<?
class Pessoa{
public $nome;
public function __construct($nome){
$this->nome = $nome;
}
}
$pessoa = new Pessoa("Osmar J. Silva");
echo $pessoa->nome;
?>
Aqui nós fornecemos o valor para a propriedade $nome na mesma instrução que cria a instância da classe. |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Python para iniciantes - Como usar a instrução continue da linguagem PythonQuantidade de visualizações: 8455 vezes |
|
A instrução continue do Python é usada para forçar o interpretador a saltar o restante das instruções da iteração atual do laço e passar para a próxima. Dessa forma, todas as instruções que vierem depois da instrução continue são automaticamente descartadas na iteração atual do laço. Veja um exemplo de um laço for que imprime apenas os números ímpares de 0 a 10:
def main():
# um laço for que conta de 0 até 10
for i in range(0, 11):
# mas queremos apenas os números impares
if i % 2 == 0:
continue # descarta os pares. Vamos para a próxima iteração
# se chegou até aqui é porque o número é impar
print(i)
if __name__== "__main__":
main()
Quando executarmos este código nós teremos o seguinte resultado: 1 3 5 7 9 |
Java ::: Aplicativos Completos ::: Fontes |
Como criar um visualizador de fontes em Java Swing - Código fonte completoQuantidade de visualizações: 11393 vezes |
|
Código completo Java: Como escrever um visualizador de fontes em Java Swing Nesta dica eu mostro o código completo para uma aplicação GUI usado Java Swing e que permite visualizar as fontes instaladas no sistema. Ao clicar em uma das fontes exibidas em uma JList, o texto da JLabel é formatado de acordo com a fonte escolhida. Note que montei toda a GUI em código mesmo, ou seja, sem usar o editor visual do Netbeans ou outra IDE. Esse é um bom exercício para entender os elementos que compõem interfaces gráficas do Java Swing. Eis o código completo para o exemplo:
package arquivodecodigos;
import java.awt.*;
import javax.swing.*;
import javax.swing.event.*;
import java.util.*;
public class Estudos extends JFrame
implements ListSelectionListener{
JLabel label = new JLabel("Observe este texto");
public Estudos(){
super("Visualizados de Fontes");
String[] fontNames; // nomes das fontes
Toolkit toolkit = Toolkit.getDefaultToolkit();
fontNames =
GraphicsEnvironment.getLocalGraphicsEnvironment().
getAvailableFontFamilyNames();
Vector fonts = new Vector();
for(int i = 0; i < fontNames.length; i++){
fonts.add(new Font(fontNames[i], Font.PLAIN, 16));
}
JList fontList = new JList(fonts);
fontList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
fontList.setCellRenderer(new FontCellRenderer());
JScrollPane scrollPane = new JScrollPane(fontList);
JPanel p = new JPanel();
p.add(scrollPane);
fontList.addListSelectionListener(this);
getContentPane().add(p, "Center");
getContentPane().add(label, "South");
setSize(500, 250);
setVisible(true);
}
@Override
public void valueChanged(ListSelectionEvent evt){
JList source = (JList) evt.getSource();
Font font = (Font) source.getSelectedValue();
label.setFont(font);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
// Classe personalizada que implementa ListCellRenderer
class FontCellRenderer implements ListCellRenderer{
@Override
public Component getListCellRendererComponent(
final JList list, final Object value,
final int index, final boolean isSelected,
final boolean cellHasFocus){
return new JPanel(){
@Override
public void paintComponent(Graphics g){
super.paintComponent(g);
Font font = (Font) value;
String text = font.getFamily();
FontMetrics fm = g.getFontMetrics(font);
g.setColor(isSelected ? list.getSelectionBackground()
: list.getBackground());
g.fillRect(0, 0, getWidth(), getHeight());
g.setColor(isSelected ? list.getSelectionForeground()
: list.getForeground());
g.setFont(font);
g.drawString(text, 0, fm.getAscent());
}
@Override
public Dimension getPreferredSize() {
Font font = (Font) value;
String text = font.getFamily();
Graphics g = getGraphics();
FontMetrics fm = g.getFontMetrics(font);
return new Dimension(fm.stringWidth(text), fm.getHeight());
}
};
}
}
Ao executá-lo você terá um resultado parecido com: ![]() |
Java ::: Fundamentos da Linguagem ::: Modificadores |
Como usar o modificador synchronized da linguagem JavaQuantidade de visualizações: 24591 vezes |
|
O modificador synchronized tem seu uso e importância destacados quando várias threads (fluxos de execução) estão sendo executadas em um programa. Tais threads podem tentar acessar métodos de uma ou mais classes ao mesmo tempo. No entanto, pode ser necessário planejarmos o sistema de forma que determinados métodos possam ser acessados por somente uma thread de cada vez, talvez para garantir a integridade de valores das diversas variáveis envolvidas no processo. É aqui que o modificador synchronized é usado. Ao marcarmos um método como synchronized, o sistema de execução Java garantirá que apenas uma thread de cada vez acesse tal método. Se outras threads tentarem fazer o mesmo, elas serão colocadas em espera até que a thread atual finalize seu trabalho e libere o método. Um exemplo de aplicação do modificador synchronized pode ser visto em uma classe Pilha. Como sabemos, esta estrutura de dados possui métodos para inserir um novo item no topo da pilha e para removê-lo do topo (lembra? LIFO: Last In First Out). Ora, para evitar que uma thread remova o elemento do topo ao mesmo tempo em que outra está tentando inserir, tais métodos devem ser marcados como synchronized. Isso evitará que os dados sejam corrompidos. |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
Python - Como inserir uma determinada quantidade de espaços à esquerda de um valor numérico usando Python |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







