Você está aqui: VB.NET ::: Dicas & Truques ::: Arquivos e Diretórios |
|
Como criar diretórios usando o método My.Computer.FileSystem.CreateDirectoryQuantidade de visualizações: 7168 vezes |
|
'Este trecho de código mostra como criar diretórios 'usando o método My.Computer.FileSystem.CreateDirectory Module Module1 Sub Main() Dim dir As String = "estudos" 'cria o diretório no diretório atual Try My.Computer.FileSystem.CreateDirectory(dir) Console.WriteLine("Diretório criado com sucesso") Catch e As Exception Console.WriteLine("Não foi possível criar o diretório") End Try 'define o local de criação diretório Try My.Computer.FileSystem.CreateDirectory("c:\estudos_vb\" _ & dir) Console.WriteLine("Diretório criado com sucesso") Catch e As Exception Console.WriteLine("Não foi possível criar o diretório") End Try Console.WriteLine() Console.WriteLine("Pressione uma tecla para sair...") Console.ReadKey() End Sub End Module |
|
Link para compartilhar na Internet ou com seus amigos: | |
C++ ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados size_t da linguagem C++Quantidade de visualizações: 15229 vezes |
O tipo size_t é definido no arquivo stddef.h e em outros headers, e sua definição pode ser encontrada da seguinte forma:typedef unsigned long size_t; Este tipo é usado para definir tamanhos de strings e blocos de memória. Foi proposto pelo ANSI C. É comum encontrar size_t substituindo unsigned int ou unsigned long. Muito frequente também é ver este tipo recebendo o resultado de uma chamada ao operator sizeof. Veja: #include <iostream> using namespace std; int main(){ // vamos obter a quantidade de bytes em um int size_t tam = sizeof(int); cout << "Um inteiro nesta arquitetura contém: " << tam << " bytes" << endl; } Ao executarmos este código nós teremos o seguinte resultado: Um inteiro nesta arquitetura contém: 4 bytes |
Java ::: Java Swing - Gerenciadores de Layout ::: GridBagLayout |
Como criar uma tela de login usando o gerenciador de layout GridBagLayout do Java SwingQuantidade de visualizações: 34919 vezes |
Temos que aceitar o fato de que o uso de uma IDE visual facilita muito o trabalho de criação de interfaces gráficas (GUI). Contudo, é muito bom poder escrever telas via código mesmo. E o gerenciador de layout GridBagLayout possibilita a criação de layouts realmente avançados. O trecho de código abaixo mostra como criar uma tela de login usando este gerenciador. Guarde este código. Ele poder ser útil na criação de outros formulários: package arquivodecodigos; import javax.swing.*; import javax.swing.border.*; import java.awt.*; public class Estudos extends JFrame{ public Estudos(){ super("Tela de login usando GridBagLayout"); // define o layout setLayout(new GridBagLayout()); // define uma borda para aumentar o espaço // entre as bordas da janela e o gerenciador // de layout ((JComponent)getContentPane()).setBorder( new EmptyBorder(5, 8, 8, 8)); // cria o GridBagConstraints GridBagConstraints gbc = new GridBagConstraints(); // controla o espaço entre os componentes // e as linhas do GridBagLayout. // aqui nós definimos 3 pixels para os // lados de cima, esquerda, inferior e direita gbc.insets = new Insets(3, 3, 3, 3); // adiciona componentes à janela // esta primeira JLabel ocupará duas células // na primeira linha gbc.gridy = 0; // linha gbc.gridx = 0; // coluna gbc.gridwidth = 2; // duas células na linha // alinha o label à esquerda gbc.anchor = GridBagConstraints.WEST; JLabel infoLabel = new JLabel("Dados do Usuário:"); // vamos aumentar a fonte da JLabel infoLabel.setFont(new Font("SansSerif", Font.BOLD, 14)); // vamos adicionar um espaço extra na parte // inferior da JLabel infoLabel.setBorder( new EmptyBorder(0, 0, 5, 0)); add(infoLabel, gbc); gbc.gridy = 1; // linha gbc.gridx = 0; // coluna gbc.gridwidth = 1; // cria a label do usuário JLabel usuarioLabel = new JLabel("Usuário:"); add(usuarioLabel, gbc); gbc.gridy = 1; // linha gbc.gridx = 1; // coluna // cria a JTextField do usuário JTextField usuarioTxt = new JTextField(13); add(usuarioTxt, gbc); gbc.gridy = 2; // linha gbc.gridx = 0; // coluna // cria a label da senha JLabel usuarioSenha = new JLabel("Senha:"); add(usuarioSenha, gbc); gbc.gridy = 2; // linha gbc.gridx = 1; // coluna // cria a JPasswordField da senha JPasswordField senhaTxt = new JPasswordField(13); add(senhaTxt, gbc); gbc.gridy = 3; // linha gbc.gridx = 1; // coluna gbc.gridwidth = 2; // duas células na linha // alinha os botões à direita gbc.anchor = GridBagConstraints.EAST; JPanel botoesPanel = new JPanel(); botoesPanel.add(new JButton("Cancelar")); botoesPanel.add(new JButton("OK")); add(botoesPanel, gbc); pack(); // ajusta o tamanho da janela ao // dos componentes setVisible(true); } public static void main(String args[]){ Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } Ao executar este código Java Swing nós teremos o seguinte resultado: |
JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como filtrar os elementos de um array em JavaScript usando a função filter() - Vetores e matrizes em JavaScriptQuantidade de visualizações: 2174 vezes |
O método filter(), adicionado à linguagem JavaScript por meio do ECMAScript 5 (JavaScript 5, ECMAScript 2009, ES5) nos permite criar um novo vetor contendo apenas os elementos que passarem em um determinado teste, que pode ser uma função de usuário personalizada. Esta função é uma função de callback que será chamada uma vez para cada um dos elementos do vetor. Para melhor entendimento, comece analisando o trecho de código abaixo: <script type="text/javascript"> function maiorQue10(valor){ return valor > 10; } // vamos criar um vetor de inteiros var valores = [2, 6, 32, 9, 3, 21]; // vamos filtrar o vetor para obter apenas os // valores maiores que 10 var maiores10 = valores.filter(maiorQue10); // vamos mostrar o resultado window.alert(maiores10); </script> Neste código usamos o método filter() para gerar um novo vetor contendo apenas os elementos com valores maiores que 10. Veja que fornecemos uma função como argumento para o método filter() e, dentro dessa função, nós retornamos true ou false para que a filtragem inclua ou não o valor sendo analisado no momento. Uma função passada para o método filter() pode conter os seguintes argumentos (nessa mesma ordem): a) O valor do item; b) O índice do item (opcional); c) O vetor a partir do qual o método filter() está sendo chamado (opcional). Veja mais um trecho de código no qual retornamos os elementos de um array maiores que 10 e precedidos de um número par: <script type="text/javascript"> function maiorQue10PrecPar(valor, indice, vetor){ // o primeiro elemento não é precedido por // outro. Vamos descartá-lo if(indice == 0){ return false; } // é precedido por um número par? if(vetor[indice - 1] % 2 == 0){ // é maior que 10? return valor > 10; } // nenhuma das condições acima? return false; } // vamos criar um vetor de inteiros var valores = [2, 6, 32, 9, 3, 21]; // vamos filtrar o vetor para obter apenas os // valores maiores que 10 e precedidos por um // número par var maiores10 = valores.filter(maiorQue10PrecPar); // vamos mostrar o resultado window.alert(maiores10); </script> Execute este código e verá que apenas o valor 32 será retornado, pois ele é o único maior que 10 e precedido por um número par. |
Delphi ::: Dicas & Truques ::: Rotinas de Conversão |
Como converter uma string em um valor numérico inteiro em Delphi usando as funções StrToInt(), TryStrToInt() e StrToIntDef()Quantidade de visualizações: 32806 vezes |
Em algumas situações precisamos converter strings em valores numéricos do tipo inteiro. Isso acontece quando recebemos valores de caixas de texto e precisamos usuá-los em cálculos. Vamos começar com a função StrToInt() da unit SysUtils. Esta função recebe uma string representando um valor inteiro válido e retorna um valor inteiro. Veja o exemplo: procedure TForm1.Button1Click(Sender: TObject); var valor1, valor2, soma: Integer; begin // vamos receber as strings dos TEdits e converter // seus valores para inteiros valor1 := StrToInt(Edit1.Text); valor2 := StrToInt(Edit2.Text); // vamos obter a soma dos dois valores soma := valor1 + valor2; // vamos exibir o resultado. Note o uso de IntToStr() para // converter o valor inteiro em string ShowMessage('A soma é: ' + IntToStr(soma)); end; Note que, se a string sendo convertida possuir um valor inteiro inválido, uma exceção do tipo EConvertError será lançada. Podemos evitar isso usando a função TryStrToInt(). Esta função recebe dois argumentos: a string a ser convertida e a variável do tipo Integer que receberá o valor. O resultado será true se a conversão for feita com sucesso e false em caso contrário. Veja: procedure TForm1.Button1Click(Sender: TObject); var valor: Integer; begin // vamos tentar converter o valor da caixa de texto // em um inteiro if TryStrToInt(Edit1.Text, valor) then ShowMessage('Conversão efetuada com sucesso.') else ShowMessage('Erro na conversão'); end; Há ainda uma terceira possibilidade: usar a função StrToIntDef(). Esta função funciona exatamente da mesma forma que StrToInt(), exceto que agora, se houver um erro de conversão, um valor inteiro padrão será retornado. Veja: procedure TForm1.Button1Click(Sender: TObject); var valor: Integer; begin // vamos converter o valor da caixa de texto // em um inteiro. Se a conversão não puder ser feita // o valor 10 será atribuído à varial valor valor := StrToIntDef(Edit1.Text, 10); // vamos exibir o resultado ShowMessage(IntToStr(valor)); end; Caso você precise trabalhar com inteiros de 64 bits, poderá usar as funções StrToInt64(), StrToInt64Def() e TryStrToInt64(). Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C++ ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados int da linguagem C++Quantidade de visualizações: 10401 vezes |
O tipo de dados int da linguagem C++ é usado quando queremos representar números inteiros, ou seja, sem partes fracionárias. Veja um trecho de código demonstrando seu uso (note que estes estudos foram feitos no Windows XP - 32 bits - usando Dev-C++):#include <iostream> using namespace std; int main(int argc, char *argv[]){ // declara uma variável do tipo int int idade = 45; cout << "A idade é: " << idade << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } A capacidade de armazenamento do tipo int depende da arquitetura na qual o programa está sendo executado. Uma forma muito comum de descobrir esta capacidade é usar os símbolos INT_MIN e INT_MAX, definidos no header climits (limits.h). Veja: #include <iostream> using namespace std; int main(int argc, char *argv[]){ cout << "Valor mínimo: " << INT_MIN << "\n"; cout << "Valor máximo: " << INT_MAX << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Ao executar este programa você terá um resultado parecido com: Valor mínimo: -2147483648 Valor máximo: 2147483647 Veja que o tipo inteiro aceita valores positivos e negativos. Tudo que você tem a fazer é tomar todo o cuidado para que os valores atribuidos a variáveis deste tipo não ultrapassem a faixa permitida. Veja um trecho de código que provoca o que chamamos de transbordamento (overflow): #include <iostream> using namespace std; int main(int argc, char *argv[]){ int soma = INT_MAX + 2; cout << "Resultado: " << soma << "\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } Este programa exibirá o seguinte resultado: Resultado: -2147483647 Note que este não é o resultado esperado, visto que INT_MAX + 2 deveria retornar: 2147483647 + 2 = 2147483649 Porém, como o valor máximo que pode ser armazenado em um int é 2147483647, o procedimento adotado pelo compilador foi tornar o número negativo e subtrair 1. É claro que, se você testar este código em arquiteturas diferentes o resultado poderá ser diferente do exemplificado aqui. Em termos de bytes, é comum o tipo int ser armazenado em 4 bytes, o que resulta em 32 bits (um byte é formado por 8 bits, lembra?). Veja um trecho de código que mostra como usar o operador sizeof() para determinar a quantidade de bytes necessários para armazenar um variável do tipo int: #include <iostream> using namespace std; int main(int argc, char *argv[]){ cout << "Tamanho de um int: " << sizeof(int) << "\n\n"; system("PAUSE"); // pausa o programa return EXIT_SUCCESS; } O resultado da execução deste código será algo como: Tamanho de um int: 4 bytes |
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
JavaScript - JavaScript para Trigonometria - Como converter radianos em graus na linguagem JavaScript |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |