Você está aqui: Cards de Engenharia Civil - Materiais de Construção |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: MIDI Musical Instrument Digital Interface, Mapeamento e sequenciamento MIDI, Entrada e saída MIDI |
Java para músicos - Como escrever um MIDI Player em Java (código bem simples e fácil de entender)Quantidade de visualizações: 14276 vezes |
|
Nesta dica apresento uma aplicação completa para um MIDI Player em Java. Trata-se de uma aplicação console que você pode estudar e implementar a mesma idéia em Java Swing ou JavaFX. Para executar o código abaixo, você só precisa definir o caminho e nome de um arquivo MIDI (extensão .mid). Veja o código completo e divirta-se:
package arquivodecodigos;
import javax.sound.midi.*;
import java.io.*;
public class Estudos{
public static void main(String args[]) {
// nome do arquivo MIDI
String arquivo = "amazing_grace.mid";
if(!arquivo.endsWith(".mid")) {
System.out.println("Este não parece ser um arquivo MIDI válido.");
System.exit(1);
}
File midiFile = new File(arquivo);
if(!midiFile.exists() || midiFile.isDirectory() ||
!midiFile.canRead()) {
System.out.println("Não foi possível acessar o arquivo indicado.");
System.exit(1);
}
try{
Sequencer seq = MidiSystem.getSequencer();
seq.setSequence(MidiSystem.getSequence(midiFile));
seq.open();
seq.start();
while(true){
if(seq.isRunning()){
try{
Thread.sleep(1000);
}
catch(InterruptedException ignore){
break;
}
}
else{
break;
}
}
seq.stop();
seq.close();
}
catch(MidiUnavailableException mue){
System.out.println("Dispositivo de MIDI indisponível");
}
catch(InvalidMidiDataException imde){
System.out.println("Dados MIDI Inválidos");
}
catch(IOException ioe){
System.out.println("Erro de I/O");
}
}
}
|
Flutter ::: Material Library - Biblioteca Material ::: TextField |
Como habilitar ou desabilitar um botão ao digitar em um widget TextField do FlutterQuantidade de visualizações: 4016 vezes |
|
Nesta dica eu mostro como podemos habilitar ou desabilitar um botão ElevatedButton dependendo do conteúdo de um TextField. Para isso nós vamos usar a propriedade onChanged da classe TextField para desabilitar o botão quando a caixa de texto estiver vazia e habilitá-lo em caso contrário. O truque aqui é passar um valor null para a propriedade onPressed do ElevatedButton. Só isso já basta para que o botão fique desabilitado. Veja o código completo para o exemplo:
import 'package:flutter/material.dart';
// método principal do Dart, que inicia a aplicação
void main() {
runApp(MeuApp());
}
class MeuApp extends StatelessWidget {
// Este widget é a raiz da aplicação Flutter
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Controle TextField',
theme: ThemeData(
primarySwatch: Colors.blue,
),
home: TelaInicial(),
);
}
}
// Vamos construir a view e retornar para a raiz da aplicação
class TelaInicial extends StatefulWidget {
TelaInicial({Key key}) : super(key: key);
@override
_TelaInicialState createState() => _TelaInicialState();
}
class _TelaInicialState extends State<TelaInicial> {
bool btnDesabilitado = true; // vamos desabilitar o botão
@override
Widget build(BuildContext context) {
// vamos criar uma caixa de texto chamada nomeTxt
final nomeTxt = TextField(
decoration: InputDecoration(
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(10.0)),
hintText: 'Digite seu nome'
),
// Vamos detectar a mudança de conteúdo do TextField
onChanged: (String value) async {
// setState() força a atualização da janela
if(value.isEmpty) { // o campo de texto não está vazio
setState(() {
btnDesabilitado = true; // desabilita o botão
});
}
else{
setState(() {
btnDesabilitado = false; // habilita o botão
});
}
}
);
final btnNome = ElevatedButton(
onPressed: btnDesabilitado ? null : (){},
child: Text('Clique Aqui'),
);
return Scaffold(
appBar: AppBar(
title: Text("O Widget TextField"),
),
body: Center(
child: Container(
child: Padding(
padding: const EdgeInsets.all(20.0),
child: Column(
children: <Widget>[
// a caixa de texto TextField vai aqui
nomeTxt,
// o botão vai aqui
btnNome,
],
),
),
),
),
);
}
}
|
Python ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como testar se um ponto está dentro de um círculo em Python - Desenvolvimento de Games com PythonQuantidade de visualizações: 1563 vezes |
|
Quando estamos trabalhando com computação gráfica, geometria e trigonometria ou desenvolvimento de jogos em Python, é comum precisarmos verificar se um determinado ponto (uma coordenada x, y) está contido dentro de um círculo. Para melhor entendimento, veja a imagem a seguir: ![]() Veja que temos um círculo com raio igual a 115 e com centro nas coordenadas (x = 205; y = 166). Temos também dois pontos. O ponto vermelho está nas coordenadas (x = 140; y = 90) e o ponto azul está nas coordenadas (x = 330; y = 500. Como podemos ver na imagem, o ponto vermelho está dentro do círculo, enquanto o ponto azul está fora. E nosso intenção nesta dica é escrever o código Python que permite fazer essa verificação. Tenha em mente que está técnica é muito útil para o teste de colisões no desenvolvimento de games. Veja o código completo para o exemplo:
# vamos importar o módulo Math
import math
# vamos declarar a classe Circulo
class Circulo:
# construtor da classe
def __init__(self, xc, yc, raio):
self.xc = xc
self.yc = yc
self.raio = raio
# agora vamos declarar a classe Ponto
class Ponto:
def __init__(self, x, y):
self.x = x # coordenada x
self.y = y # coordenada y
# método principal
def main():
# vamos criar um objeto Circulo
c = Circulo(205, 166, 115)
# vamos criar um objeto Ponto
p = Ponto(140, 90)
# vamos verificar se o ponto está dentro do
# círculo
dx = p.x - c.xc;
dy = p.y - c.yc;
if((math.pow(dx, 2) + math.pow(dy, 2)) < math.pow(c.raio, 2)):
print("O ponto está dentro do círculo")
else:
print("O ponto NÃO está dentro do círculo")
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: O ponto está dentro do círculo. Experimente com círculos de raios e coordenadas centrais diferentes e também com pontos em várias coordenadas e veja como os resultados são interessantes. |
C# ::: Windows Forms ::: DataGridView |
Como ocultar ou exibir uma determinada coluna do DataGridView do C# Windows FormsQuantidade de visualizações: 14416 vezes |
Em algumas situações precisamos ocultar ou exibir determinadas colunas do DataGridView. Isso pode ser feito definindo-se os valores true ou false para a propriedade Visible da classe DataGridViewColumn. Veja um trecho de código no qual ocultamos a segunda coluna do DataGridView:
private void button3_Click(object sender, EventArgs e){
// vamos ocultar a segunda coluna
dataGridView1.Columns[1].Visible = false;
}
Veja que aqui nós acessamos a coleção DataGridViewColumnCollection e usamos um índice para retornar o DataGridViewColumn desejado. É possível também acessar um determinado DataGridViewColumn na coleção de colunas usando o valor definido para sua propriedade name. Veja:
private void button3_Click(object sender, EventArgs e){
// vamos ocultar a segunda coluna
dataGridView1.Columns["populacao"].Visible = false;
}
|
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como testar se um diretório existe em PHP usando a função file_exists()Quantidade de visualizações: 19264 vezes |
|
Em algumas situações nós precisamos verificar se um determinado diretório existe no sistema antes de efetuarmos alguma operação. Para isso nós podemos usar a função file_exists(). Esta função retorna um valor true se o diretório existir e false em caso contrário. Veja um código PHP completo demonstrando o seu uso:
<?php
$diretorio = "arquivo/imagens";
if(file_exists($diretorio)){
echo "O diretório já existe.";
}
else{
echo "O diretório não existe ainda.";
}
?>
|
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
|
Python - Como tratar o evento wx.EVT_PAINT em suas aplicações wxPython - Interfaces gráficas no Python |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







