![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Engenharia Civil - Estruturas de Concreto Armado |
||
|
||
|
|
||
Java ::: Classes e Componentes ::: JTable |
Java Swing - Como colorir as células de uma JTable individualmente ao passar o mouse sobre elasQuantidade de visualizações: 1 vezes |
|
Nesta dica eu mostro como é possível aplicar uma cor diferente às células individuais de uma JTable ao passar o mouse em cima delas. O efeito visual é muito interessante, principalmente quando temos uma JTable com muitos dados. No exemplo eu construí a aplicação Java Swing na mão mesmo, sem usar nenhum editor visual. É um ótimo exercício para realmente entender as partes que compoem uma aplicação Java Swing. Veja o código Java completo:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
import javax.swing.event.*;
public class Estudos extends JFrame{
int linha, coluna;
public Estudos(){
super("JTable");
// colunas da tabela
String[] colunas = {"Cidade", "Estado", "Habitantes"};
// conteúdo da tabela
Object[][] conteudo = {
{"Goiânia", "GO", "43.023.432"},
{"São Paulo", "SP", "5.343.234"},
{"Rio de Janeiro", "RJ", "6.434.212"},
{"Jussara", "GO", "87.454"},
{"Barra do Garças", "MT", "64.344"}
};
// constrói a tabela
final JTable tabela = new JTable(conteudo, colunas);
tabela.setPreferredScrollableViewportSize(new
Dimension(350, 50));
class CellListener extends MouseMotionAdapter{
public void mouseMoved(MouseEvent e){
JTable tb = (JTable)e.getSource();
linha = tb.rowAtPoint(e.getPoint());
coluna = tb.columnAtPoint(e.getPoint());
tb.repaint();
}
}
class ColorirCelula extends JLabel
implements TableCellRenderer{
public ColorirCelula(){
setOpaque(true);
}
public Component getTableCellRendererComponent(
JTable table, Object value,
boolean isSelected, boolean hasFocus,
int row, int column){
if(row == linha && column == coluna){
this.setBackground(Color.yellow);
}
else{
this.setBackground(table.getBackground());
}
this.setText(value.toString());
return this;
}
}
Container c = getContentPane();
c.setLayout(new FlowLayout());
tabela.addMouseMotionListener(new CellListener());
tabela.setDefaultRenderer(Object.class,
new ColorirCelula());
JScrollPane scrollPane = new JScrollPane(tabela);
c.add(scrollPane);
setSize(400, 300);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Ao executarmos esta aplicação Java Swing nós teremos o seguinte resultado: ![]() |
Java ::: Dicas & Truques ::: Imagens e Processamento de Imagens |
Como carregar uma imagem em um JFrame do Java Swing - Manipulação de imagens em JavaQuantidade de visualizações: 20234 vezes |
|
Nesta dica mostrarei como é possível combinar as classes Toolkit e MediaTracker para carregar uma imagem JPG e exibi-la na superfície da uma janela JFrame do Java Swing. Este exemplo é muito útil, pois abre o horizonte para uma infinidade de aplicações interessantes, deste visualizadores de imagens e fotos até jogos em Java. Veja o código completo para o exemplo:
import java.awt.*;
import javax.swing.*;
public class Estudos extends JFrame{
private Image imagem;
public Estudos() {
super("Carregando imagens em uma JFrame");
// imagem a ser exibida
String minhaImagem = "foto1.jpg";
Toolkit toolkit = Toolkit.getDefaultToolkit();
imagem = toolkit.getImage(minhaImagem);
MediaTracker mediaTracker = new MediaTracker(this);
mediaTracker.addImage(imagem, 0);
try{
mediaTracker.waitForID(0);
}
catch(InterruptedException ie){
System.err.println(ie);
System.exit(1);
}
setSize(imagem.getWidth(null), imagem.getHeight(null));
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void paint(Graphics graphics){
graphics.drawImage(imagem, 0, 0, null);
}
}
Ao executar esta aplicação Java Swing nós teremos o seguinte resultado: ![]() |
VB.NET ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres |
Exercícios Resolvidos de VB.NET - Como retornar o código ASCII associado a um caractere em VB.NET - Ler um caractere e retornar o código ASCII correspondenteQuantidade de visualizações: 978 vezes |
|
Pergunta/Tarefa: Escreva um programa VB.NET que pede para o usuário informar um caractere (letra ou número) e mostre o código ASCII correspondente. Sua saída deverá ser parecida com: Informe um caractere: A Você informou o caractere: A O código ASCII correspondente é: 65 Veja a resolução comentada deste exercício em VB.NET:
Imports System
Module Program
' função principal do programa VB.NET
Sub Main(args As String())
' vamos pedir para o usuário informar uma letra, símbolo ou pontuação
Console.Write("Informe um caractere: ")
' vamos ler o caractere informado
Dim caractere As Char = Console.ReadLine()(0)
' agora vamos obter o código ASCII correspondente
Dim codigo As Integer = Asc(caractere)
' e mostramos o resultado
Console.WriteLine("Você informou o caractere: " & caractere)
Console.WriteLine("O código ASCII correspondente é: " & codigo)
Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...")
' pausa o programa
Console.ReadKey()
End Sub
End Module
O Código Padrão Americano para o Intercâmbio de Informação (do inglês American Standard Code for Information Interchange - ASCII, pronunciado [áski]) é um sistema de representação de letras, algarismos e sinais de pontuação e de controle, através de um sinal codificado em forma de código binário (cadeias de bits formada por vários 0 e 1), desenvolvido a partir de 1960, que representa um conjunto de 128 sinais: 95 sinais gráficos (letras do alfabeto latino, algarismos arábicos, sinais de pontuação e sinais matemáticos) e 33 sinais de controle, utilizando 7 bits para representar todos os seus símbolos. |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de VisuAlg - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 1129 vezes |
|
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa VisuAlg que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando VisuAlg:
algoritmo "Testar o tipo de um triângulo em VisuAlg"
var
// variáveis usadas na resolução do problema
lado_a, lado_b, lado_c: inteiro
inicio
// vamos ler o primeiro lado do triângulo
escreva("Informe o primeiro lado do triângulo: ")
leia(lado_a)
// vamos ler o segundo lado do triângulo
escreva("Informe o segundo lado do triângulo: ")
leia(lado_b)
// vamos ler o terceiro lado do triângulo
escreva("Informe o terceiro lado do triângulo: ")
leia(lado_c)
// os lados informados formam um triângulo?
se ((lado_a < (lado_b + lado_c)) e (lado_b < (lado_a + lado_c)) e
(lado_c < (lado_a + lado_b))) entao
// é um triângulo equilátero (todos os lados iguais)?
se ((lado_a = lado_b) e (lado_b = lado_c)) entao
escreval("O triângulo é equilátero")
senao
// é isósceles (dois lados iguais e um diferente)?
se ((lado_a = lado_b) ou (lado_a = lado_c) ou (lado_c = lado_b)) entao
escreval("O triângulo é isósceles")
senao
// é escaleno
escreval("O triângulo é escaleno")
fimse
fimse
senao
escreval("Os lados informados não formam um triângulo.")
fimse
fimalgoritmo
|
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como criar um laço while() infinito na linguagem PythonQuantidade de visualizações: 10562 vezes |
|
Nesta dica eu mostrarei como é possível criar um laço (loop) while infinito em Python. Esta técnica é útil para as situações nas quais queremos interagir com o usuário do nosso programa até que um determinado valor seja informado. No exemplo abaixo temos um laço while() que será executado até que o texto "fim" seja informado pelo usuário. Veja o código completo:
def main():
while True:
frase = input("Digite uma frase: ");
print("Você digitou: ", frase)
# vamos sair do laço
if frase == "fim":
print("Você acaba de sair do laço while()")
break
if __name__== "__main__":
main()
Ao executar este código nós teremos o seguinte resultado: Digite uma frase: Estou estudando Python Você digitou: Estou estudando Python Digite uma frase: Preciso viajar amanhã Você digitou: Preciso viajar amanhã Digite uma frase: fim Você digitou: fim Você acaba de sair do laço while() |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







