Você está aqui: Java ::: Classes e Componentes ::: JTextArea |
Java Swing - Como adicionar mais texto a um JTextArea usando o método append()Quantidade de visualizações: 19461 vezes |
Nesta dica mostrarei como é possível usar o método append() da classe JTextArea para adicionar mais conteúdo a esse controle. Esta é uma técnica muito importante no desenvolvimento de aplicações Java Swing. Segue um exemplo completo (note que fiz toda a aplicação Java Swing na mão mesmo, ou seja, não usei o editor visual do NetBeans ou semelhantes): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- package arquivodecodigos; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Estudos extends JFrame { JTextArea textArea; JTextField texto; JButton btn; public Estudos() { super("Como adicionar texto a um JTextArea"); Container c = getContentPane(); FlowLayout layout = new FlowLayout(FlowLayout.LEFT); c.setLayout(layout); textArea = new JTextArea(10, 20); texto = new JTextField(10); btn = new JButton("Adicionar Texto"); btn.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { textArea.append(texto.getText()); } } ); c.add(textArea); c.add(texto); c.add(btn); setSize(350, 250); setVisible(true); } public static void main(String args[]) { Estudos app = new Estudos(); app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } Veja que neste exemplo, mais conteúdo é adicionado ao controle JTextArea sem provocar uma quebra de linha. Em outras dicas e truques dessa seção você aprenderá como isso pode ser feito. |
Link para compartilhar na Internet ou com seus amigos: |
C++ ::: Win32 API (Windows API) ::: Arquivos e Diretórios |
C++ Windows API - Como ler o conteúdo de um arquivo usando a função ReadFile() da Win32 APIQuantidade de visualizações: 8653 vezes |
A função ReadFile() é usada quando queremos ler o conteúdo de um arquivo. A leitura se inicia na posição zero do arquivo e mantém um ponteiro de arquivo, a partir do qual as leituras subsequentes ocorrerão. Esta função pode ser usada para leituras síncronas e assíncronas. Para leituras apenas assíncronas devemos usar ReadFileEx(). Veja seu protótipo na documentação da API do Windows: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- BOOL WINAPI ReadFile( HANDLE hFile, LPVOID lpBuffer, DWORD nNumberOfBytesToRead, LPDWORD lpNumberOfBytesRead, LPOVERLAPPED lpOverlapped ); Antes de vermos um exemplo de como usar a função ReadFile(), vamos dar uma olhada em seus parâmetros: a) HANDLE hFile - Este é o handle para o arquivo a partir do qual queremos ler. Tal handle deve ser criado com o direito de acesso GENERIC_READ. b) LPVOID lpBuffer - Um ponteiro para o buffer que receberá os dados lidos do arquivo. c) DWORD nNumberOfBytesToRead - O número máximo de bytes a serem lidos de cada vez. Geralmente este número está relacionado à quantidade de bytes dos elementos do buffer. d) LPDWORD lpNumberOfBytesRead - Um ponteiro para uma variável que receberá o número de bytes lidos. A função ReadFile() define o valor desta variável como 0 antes de cada leitura e verificação de erros. e) LPOVERLAPPED lpOverlapped - Um ponteiro para um estrutura OVERLAPPED. Esta estrutura é exigida se o handle para o arquivo for obtido usando FILE_FLAG_OVERLAPPED para o parâmetro dwFlagsAndAttributes da função CreateFile(). Geralmente usamos NULL para este parâmetro. A função ReadFile() retorna quando um erro ocorre ou a quantidade de bytes solicitados é alcançada. Veja um trecho de código no qual lemos o conteúdo de um arquivo chamado testes.txt: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <cstdlib> #include <iostream> #include <windows.h> #define TAM_BUFFER 256 // tamanho do buffer em bytes using namespace std; int main(int argc, char *argv[]){ // nome do arquivo CHAR arquivo[] = "C:\\testes.txt"; CHAR buffer[TAM_BUFFER]; // buffer para o conteúdo do arquivo DWORD nIn; // bytes lidos // vamos abrir o arquivo para leitura. // se o arquivo não existir uma mensagem de erro é exibida. HANDLE hArquivo = CreateFile(arquivo, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if(hArquivo == INVALID_HANDLE_VALUE){ cout << "Erro ao abrir o arquivo: " << GetLastError() << endl; } else{ // arquivo aberto com sucesso. Vamos ler while(ReadFile(hArquivo, buffer, TAM_BUFFER, &nIn, NULL) && nIn > 0){ cout << "Efetuei a leitura de " << nIn << " bytes." << endl; // vamos adicionar o caractere de final de linha // caso os bytes lidos não preencham todo o buffer buffer[nIn] = 0; cout << "Conteudo da leitura: " << buffer << endl; } } // vamos fechar o handle CloseHandle(hArquivo); system("PAUSE"); return EXIT_SUCCESS; } |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: VisuAlg Básico |
Exercícios Resolvidos de VisuAlg - Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas)Quantidade de visualizações: 239 vezes |
Exercícios Resolvidos de VisuAlg - Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas) Pergunta/Tarefa: Uma loja está concedendo desconto de 20% para clientes do sexo feminino com idade entre 18 e 35 anos (ambas incluídas). Para os demais clientes o desconto é 5% apenas. Leia o valor do produto, o nome, sexo e a idade do cliente e aplique o desconto correspondente. Sua saída deverá ser parecida com: Informe o valor do produto: 520 Informe o nome do cliente: FABRICIA DE CASTRO Informe a idade: 23 Informe o sexo: F FABRICIA DE CASTRO, você ganhou o desconto de 20% Valor a pagar: 416.0 Informe o valor do produto: 830 Informe o nome do cliente: OSMAR SLVA Informe a idade: 38 Informe o sexo: M OSMAR SLVA, você ganhou apenas o desconto de 5% Valor a pagar: 788.5 Veja a resolução deste exercício em VisuAlg: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- algoritmo "Ler o valor do produto, o valor do produto, o sexo..." var valor: real nome, sexo: caractere idade: inteiro inicio // vamos ler o valor do produto escreva("Informe o valor do produto: ") leia(valor) // agora vamos ler o nome do cliente escreva("Informe o nome do cliente: ") leia(nome) // agora vamos ler a idade escreva("Informe a idade: ") leia(idade) // e finalmente vamos ler o sexo do cliente escreva("Informe o sexo: ") leia(sexo) // vamos verificar se o cliente faz jus ao desconto // de 20% se ((idade >= 18) e (idade <= 35) e (sexo = "F")) entao valor <- valor - (valor * (20 / 100)) escreval(nome, ", você ganhou o desconto de 20%") escreval("Valor a pagar: ", valor) senao valor <- valor - (valor * (5 / 100)) escreval(nome, ", você ganhou apenas o desconto de 5%") escreval("Valor a pagar: ", valor) fimse fimalgoritmo |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como abrir um arquivo em PHP - Passos necessários para abrir um arquivo usando PHPQuantidade de visualizações: 17925 vezes |
Nesta dica mostrarei os passos necessários para abrir um arquivo usando PHP. Note que usei a função file_exists() para verificar se o caminho e nome do arquivo indicados existem no sistema. Em seguida efetuamos uma chamada à função fopen() indicando que o arquivo será aberto no modo leitura. Veja como coloquei todo o código em uma exceção try..catch. Usar exceções em PHP é a melhor forma de garantir que seus códigos responderão corretamente a eventos inesperados. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <?php // Informe o nome do arquivo que você deseja abrir $arquivo = "c:\\estudos_php\\teste.txt"; // Use a função file_exists() para confirmar a existência do // do arquivo. if(file_exists($arquivo)){ // Tente abrir o arquivo (neste exemplo vamos abrí-lo para leitura) try{ if($readfile = fopen($arquivo, "r")){ // Já podemos manipular o arquivo. echo "Arquivo aberto com sucesso."; } else{ // Não foi possível abrir. Vamos lançar uma exceção. throw new exception("Não consegui abrir o arquivo."); } } catch(exception $e){ echo $e->getmessage(); } } else{ echo "Arquivo não existe."; } ?> Ao executar este código PHP nós teremos duas situações. Se o arquivo existir, a mensagem "Arquivo aberto com sucesso." será exibida. Se o arquivo não existir, a mensagem "Arquivo não existe". Há ainda uma terceira mensagem, que será exibida caso a exceção for atirada, indicando que o arquivo não pôde ser aberto por alguma outra razão. |
PHP ::: Dicas & Truques ::: Data e Hora |
PHP para iniciantes - Como converter segundos para horas no formato HH:MM:SS usando a função gmdate() do PHPQuantidade de visualizações: 18879 vezes |
Nesta dica mostrarei o uso da função gmdate() da linguagem PHP para convertermos, de forma bem rápida, um determinado número de segundos em horas no formato HH:MM:SS. É claro que há uma infinidade de formas de se fazer isso em PHP. Porém, essa é uma das mais simples, pois não exige nenhum cálculo. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <html> <head> <title>Estudando PHP</title> </head> <body> <?php $segundos = 134; echo "$segundos segundos equivale a " . gmdate("H:i:s", $segundos); ?> </body> </html> Ao executar este código nós teremos o seguinte resultado: 134 segundos equivale a 00:02:14 |
Delphi ::: Data Controls (Controles de Dados) ::: TDBGrid |
Como usar objetos da classe TColumn para representar as colunas individuais de um controle TDBGrid do DelphiQuantidade de visualizações: 9733 vezes |
Objetos da classe TColumn representam as colunas individuais em um data grid (TDBGrid). Cada controle DBGrid usa um objeto da classe TDBGridColumns para manter uma coleção de objetos TColumn, e, cada objeto TColumn representa as características visuais e ligação de dados de uma determinada coluna na grid. Um objeto TDBGridColumns é representado no controle TDBGrid pela propriedade Columns. Veja a posição da classe TColumn na hierarquia de classes do Delphi: System.TObject Classes.TPersistent Classes.TCollectionItem DBGrids.TColumn Veja um trecho de código no qual obtemos um objeto da classe TColumn representando a primeira coluna de um DBGrid e em seguida exibimos seu título: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- procedure TForm3.Button3Click(Sender: TObject); var coluna: TColumn; begin // vamos obter a primeira coluna do DBGrid coluna := DBGrid1.Columns[0]; // vamos mostrar o título da coluna obtida ShowMessage('O título da coluna é: ' + coluna.Title.Caption); end; Ao executar este código teremos uma mensagem parecida com: "O título da coluna é: Autor". Esta dica foi escrita e testada no Delphi 2009. |
Desafios, Exercícios e Algoritmos Resolvidos de Delphi |
Veja mais Dicas e truques de Delphi |
Dicas e truques de outras linguagens |
Java - Como testar se um ponto está dentro de um círculo em Java - Desenvolvimento de Games com Java |
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 |