Você está aqui: Delphi ::: VCL - Visual Component Library ::: TStringGrid |
|
Como centralizar os títulos das colunas (ou o conteúdo de qualquer célula) de um TStringGrid do DelphiQuantidade de visualizações: 13137 vezes |
|
Em algumas situações nós precisamos centralizar os títulos das colunas de um TStringGrid. Em geral os títulos das colunas são exibidos nas células da primeira linha fixa do TStringGrid. Nesta dica eu mostrarei a forma mais comum de alcançar este efeito. Note que a técnica pode ser usada para centraliar o conteúdo de qualquer célula da grid: procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); var conteudo: String; alinhamento_anterior: Word; begin // vamos centralizar os títulos das colunas, ou seja, o conteúdo // das células na primeira linha if ARow = 0 then begin // vamos obter o conteúdo da célula conteudo := (Sender as TStringGrid).Cells[ACol, ARow]; // vamos obter o alinhamento atual ...... Aqui nós temos duas chamadas à função SetTextAlign() da API do Windows. Na primeira vez nós obtemos o alinhamento atual e definimos o novo alinhamento como TA_CENTER. Na segunda chamada nós voltamos o alinhamento anterior. Se não fizermos este procedimento, todas as demais células da grid terão seus conteúdos também alinhados ao centro. |
|
Link para compartilhar na Internet ou com seus amigos: | |
C++ ::: Fundamentos da Linguagem ::: Passos Iniciais |
C++ do básico ao avançado - Conheça a origem da linguagem C++Quantidade de visualizações: 13255 vezes |
C++ começou como uma versão expandida de C. As extensões C++ foram inventadas primeiramente por Bjarne Stroustrup, em 1979, no Bell Laboratories em Murray Hill, New Jersey. Ele inicialmente chamou a nova linguagem de "C com classes". Contudo, em 1983 o nome foi mudado para C++. Embora C fosse uma das linguagens preferidas e mais usadas para programação profissional em todo o mundo, a invenção de C++ se fez necessária devido a um fator de programação: o aumento da complexidade. No decorrer dos anos, programas de computador se tornaram maiores e mais complexos. Mesmo sendo uma excelente linguagem de programação, C tem seus limites. Em C, uma vez que um programa atinja a marca de 25.000 à 100.000 linhas de códigos, este se torna tão complexo que é difícil analisá-lo como um todo. A manutenção de seu código se torna um pesadelo. O propósito de C++ é quebrar esta barreira. A essência do C++ é permitir que programadores compreendam e gerenciem programas cada vez mais complexos. A maioria das adições feitas ao C por Stroustrup suportam a programação orientada a objetos, às vezes chamada de POO. Stroustrup afirmou que algumas das características da orientação a objetos de C++ foram inspiradas em uma linguagem chamada Simula67. Assim, C++ representa a combinação de dois métodos poderosos de programação. Desde que C++ foi inventada, ela já passou por três revisões importantes, com adições e modificações da linguagem. A primeira revisão ocorreu em 1985 e a segunda em 1990. A terceira ocorreu durante a padronização do C++. Há vários anos que este trabalho de padronização foi iniciado. Para esta finalidade, uma associação entre a ANSI (American National Standards Institute) e a ISO (International Standards Organization) resultou em um comitê de padronização. O primeiro documento contendo o padrão proposto foi criado em 25 de janeiro de 1994. Neste documento, o comitê ANSI/ISO C++ manteve as características definidas por Stroustrup e acrescentou algumas outras. Mas, no geral, este documento inicial refletiu o estado de C++ na época. Logo após a finalização do primeiro documento de padronização C++, um evento ocorreu e com ele a linguagem foi amplamente expandida: a criação da Standard Template Library (STL) por Alexander Stepanov. A STL é um conjunto de rotinas generícas que podemos usar para manipular dados. A STL não é somente poderosa e elegante, mas também muito extensa. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de C - Escreva um programa C para mover todos os zeros para o final do vetor, sem alterar a ordem dos elementos já presentes no arrayQuantidade de visualizações: 570 vezes |
Pergunta/Tarefa: Dado o seguinte vetor de inteiros: // vamos declarar e construir um vetor de 8 inteiros int valores[] = {0, 3, 0, 5, 7, 4, 0, 9}; Sua saída deverá ser parecida com: Vetor na ordem original: 0 3 0 5 7 4 0 9 Vetor com os zeros deslocados para o final: 3 5 7 4 9 0 0 0 Veja a resolução comentada deste exercício usando C: #include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char *argv[]){ // vamos declarar e construir um vetor de 8 inteiros int valores[] = {0, 3, 0, 5, 7, 4, 0, 9}; int i; // para o controle do laço int j; // variável auxiliar int temp; // variável temporária setlocale(LC_ALL,""); // para acentos do português // vamos mostrar o vetor na ordem original printf("Vetor na ordem original:\n"); for(i = 0; i < 8; i++){ printf("%d ", valores[i]); } // vamos inicializar j como 0 para que ele aponte para // o primeiro elemento do vetor j = 0; // agora o laço for percorre todos os elementos do vetor, ...... Não se esqueça: A resolução do exercício deve ser feita sem a criação de um vetor, array ou lista adicional, e os elementos diferentes de zero devem permanecer na mesma ordem que eles estavam antes. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Operadores de Manipulação de Bits (Bitwise Operators) |
Exercícios Resolvidos de C - Como converter de decimal para binário usando os operadores de bits em CQuantidade de visualizações: 498 vezes |
Pergunta/Tarefa: Escreva um programa C para pede para o usuário informar um número decimal e faça a conversão para binário usando os operadores de bits. Sua saída deverá ser parecida com: Informe um número decimal: 9 O número binário é: 00000000000000000000000000001001 Veja a resolução completa para o exercício em C, comentada linha a linha: #include <stdio.h> #include <stdlib.h> #include <locale.h> // vamos definir o tamanho do vetor para guardar // os dígitos do número binário #define TAM_INT sizeof(int) * 8 int main(int argc, char *argv[]){ // variáveis para ajudar a resolver o problema int decimal, indice, i; // vetor para guardar o número binário int binario[TAM_INT]; setlocale(LC_ALL,""); // para acentos do português // vamos pedir para o usuário informar um decimal inteiro printf("Informe um número decimal: "); scanf("%d", &decimal); // ajustamos índice para o último elemento do vetor ...... |
Java ::: Dicas & Truques ::: Formulários e Janelas |
Java Swing para iniciantes - Como criar seu primeiro aplicativo de interface gráfica em Java SwingQuantidade de visualizações: 79613 vezes |
Um aplicativo de interface gráfica em Java é criado usando-se a classe JFrame, do Java Swing. Objetos desta classe servem como containeres para outros componentes e são as janelas principais dos aplicativos, com título e botões para redimensionar, minimizar, maximizar e fechar. Veja um exemplo de um simples aplicativo de interface gráfica em Java Swing: package arquivodecodigos; import javax.swing.*; public class Estudos extends JFrame{ public Estudos() { super("Minha primeira aplicação GUI"); setSize(350, 250); ...... Este código gera uma janela principal de um aplicativo com 350 pixels de largura e 250 pixels de altura. O título da janela é: "Minha primeira aplicação GUI". Veja o resultado na figura abaixo: |
C# ::: Coleções (Collections) ::: ArrayList |
Como excluir todos os elementos de uma ArrayList do C# usando o método Clear()Quantidade de visualizações: 7880 vezes |
A remoção, ou seja, a exclusão de todos os elementos de uma ArrayList do C# pode ser feita com uma chamada ao método Clear(). Veja que este método poderá lançar uma exceção NotSupportedException se a ArrayList for somente leitura ou possuir um tamanho fixo. Veja um exemplo de seu uso: using System; using System.Collections; namespace Estudos { class Program { static void Main(string[] args) { // Cria o ArrayList ArrayList cidades = new ArrayList(); // Adiciona nomes de cidades cidades.Add("Goiânia"); cidades.Add("Cuiabá"); cidades.Add("Fortaleza"); cidades.Add("Curitiba"); // obtém a quantidade de elementos ...... Ao executar este código C# nós teremos o seguinte resultado: A lista contém 4 itens A lista contém 0 itens Pressione uma tecla para sair... |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
Quem Somos |
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
|
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..
|
Linguagens Mais Populares |
1º lugar: Java |