Você está aqui: wxWidgets ::: Dicas & Truques ::: wxApp |
|
Como usar a classe wxApp em suas aplicações C++ wxWidgetsQuantidade de visualizações: 1540 vezes |
|
A classe wxApp (Application Class) é uma das primeiras classes que devemos estudar se quisermos ter um domínio perfeito do framework wxWidgets. Para usá-la, devemos incluir #include <wx/app.h> em nossos códigos. Essa classe herda de wxAppConsole. Todas as aplicações wxWidgets definem uma classe application derivada de wxApp. Há somente uma instância dela, e essa instância representa a aplicação sendo executada no momento. De todos os métodos herdados de wxApp, há pelo menos um que devemos implementar, e ele é a função OnInit(), que é chamada quando o wxWidgets está pronto para executar o nosso código. OnInit() equivale ao main() em C/C++ ou WinMain (aplicações Win32). Veja um trecho de código no qual declaramos e usamos a classe wxApp: Código para aplicacao.h: #include <wx/wx.h> // arquivo de definição // declaramos a classe application class MinhaAplicacao : public wxApp{ public: ...... Código para aplicacao.cpp: #include "aplicacao.h" // arquivo de implementação // aqui o wxWidgets implementa nosso objeto MinhaAplicacao IMPLEMENT_APP(MinhaAplicacao) bool MinhaAplicacao::OnInit(){ // vamos mostrar uma mensagem ao iniciar a aplicação wxMessageDialog *alerta = new wxMessageDialog(NULL, ...... Veja que no arquivo de declaração (header file) nós temos a macro DECLARE_APP. Ela nos permite declarar a função wxGetApp() que retorna uma referência para o objeto aplicação. Se não fizermos isso, a única forma de obter tal referência é usando o ponteiro global wxTheApp, que é do tipo wxApp*. A macro IMPLEMENT_APP, no arquivo de implementação, permite ao wxWidgets criar dinamicamente uma instância do objeto application no ponto apropriado da inicialização da biblioteca. Esse trecho de código é totalmente funcional, mas teremos apenas a exibição de uma mensagem wxMessageDialog. Por essa razão eu retornei false no laço de eventos. Se tivéssemos criado uma janela wxFrame, o retorno deveria ser true, já que teríamos de lidar com eventos. Para finalizarmos, lembre-se de que o método OnInit() da classe wxApp é o local ideal para se fazer as verificações iniciais da aplicação, tais como conexão com banco de dados, permissão do usuário, disponibilidade da rede, etc. |
|
Link para compartilhar na Internet ou com seus amigos: | |
HTML5 ::: HTML5 + JavaScript ::: Canvas |
Programação gráfica para iniciantes - Como desenhar círculos com ou sem preenchimento usando o método arc() do objeto Canvas do HTML5Quantidade de visualizações: 5713 vezes |
Podemos usar o método arc() do objeto Canvas do HTML5 para desenhar círculos com ou sem prenchimento. Veja nos exemplos abaixo como isso pode ser feito. Primeiro um círculo sem preenchimento:<!doctype html> <html> <head> <title>O objeto Canvas do HTML5</title> </head> <body> <Canvas id="canvas1" width="500" height="350"></Canvas> <script type="text/javascript"> // obtemos uma referência ao elemento Canvas var canvas = document.getElementById("canvas1"); // obtemos o contexto de desenho var contexto = canvas.getContext("2d"); ...... Ao abrir esta página HTML nós teremos o seguinte resultado: E agora um círculo preenchido: <!doctype html> <html> <head> <title>O objeto Canvas do HTML5</title> </head> <body> <Canvas id="canvas1" width="500" height="350"></Canvas> <script type="text/javascript"> // obtemos uma referência ao elemento Canvas var canvas = document.getElementById("canvas1"); // obtemos o contexto de desenho var contexto = canvas.getContext("2d"); // vamos desenhar um círculo sem preenchimento com raio de 80 contexto.beginPath(); // início um novo caminho ...... Ao abrir esta página HTML nós teremos o seguinte resultado: |
VB.NET ::: Dicas & Truques ::: Strings e Caracteres |
Como converter uma string para letras maiúsculas em VB.NET usando o método ToUpper() da classe StringQuantidade de visualizações: 10022 vezes |
Nesta dica mostrarei como podemos usar o método ToUpper() da classe String do VB.NET para converter todos os caracteres de uma palavra, frase ou texto para letras maiúsculas. Veja o código completo para o exemplo: Imports System Module Program Sub Main(args As String()) Dim frase As String = "VejA esta FRASe" ' vamos mostrar a frase original Console.WriteLine("Frase original: " & frase) ' transforma tudo em letras maiúsculas frase = frase.ToUpper() ...... Ao executar este código VB.NET nós teremos o seguinte resultado: Frase original: VejA esta FRASe Em letras maiúsculas: VEJA ESTA FRASE |
JavaScript ::: URLs e Parâmetros de URLs ::: URLSearchParams |
Como obter a quantidade de parâmetros em um objeto URLSearchParams do JavaScriptQuantidade de visualizações: 826 vezes |
Em algumas situações nós precisamos saber quantos parâmetros de URL foram informados em um objeto URLSearchParams. Para isso nós só precisamos converter o Map representado por URLSearchParams em um array bidimensional usando Array.from(). A partir daí é só chamar a propriedade length do array. Veja o código completo para o exemplo: <!DOCTYPE html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Acessando parâmetros de URL</title> </head> <body> <script type="text/javascript"> ...... Ao executar este exemplo JavaScript com a URL: http://localhost/estudos/index.php?nome=Osmar&idade=39 nós teremos uma mensagem window.alert() com o seguinte texto: Quantidade de parâmetros: 2 |
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como acessar os caracteres de uma string Ruby individualmente usando a notação de vetor []Quantidade de visualizações: 6892 vezes |
Muitas vezes precisamos acessar os caracteres de uma string individualmente. Isso pode ser feito com o auxílio da notação []. Para isso só precisamos fornecer o índice do caractere que queremos acessar e o valor 1, para indicar que queremos acessar apenas um caractere de cada vez. Veja: nome = "Osmar" # vamos acessar os caracteres individualmente for indice in (0..nome.length) ...... Ao executar este código Ruby nós teremos o seguinte resultado: O s m a r |
C# ::: Windows Forms ::: ListBox |
Como ordenar alfabeticamente os itens de uma ListBox do C# Windows Forms usando a propriedade SortedQuantidade de visualizações: 10129 vezes |
Os itens de uma ListBox podem ser ordenados alfabeticamente definindo-se o valor True para a propriedade Sorted. Em tempo de execução este propriedade pode ser alterada da seguinte forma: private void button2_Click(object sender, EventArgs e){ // Ordena os itens da lista alfabeticamente ...... Esta propriedade pode também ser obtida enquanto o programa estiver em execução. Veja um trecho de código no qual clicamos em um botão e exibimos uma mensagem com o valor da propriedade Sorted da ListBox: private void button1_Click(object sender, EventArgs e) { // Obtém o valor da propriedade Sorted ...... Ao executarmos este código C# nós teremos o seguinte resultado: Valor da propriedade Sorted: True |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
Java - Java para iniciantes - Como pesquisar uma substring em uma string e retornar sua posição inicial Android Java - Como usar a classe Toast em suas aplicações Android |
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 |