Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: C++ ::: Win32 API (Windows API) ::: Listbox Control

Como retornar o valor do item selecionado em uma Listbox

Quantidade de visualizações: 6971 vezes
/*
  Este exemplo mostra como obter o valor do item
  selecionado em uma Listbox.
*/

case IDC_BUTTON1: // ID do botão
 
  // Obtém o índice do item selecionado na Listbox
  int indice = SendMessage(GetDlgItem(hwnd, IDC_LIST1), 
    LB_GETCURSEL, 0, 0);

  WCHAR mensagem[80];
  
  if(indice < 0){
    wcscpy_s(mensagem, L"Você não selecionou nenhum item.");
  }
  else{
    WCHAR valor_item[80];
	
    // obtém o valor do item selecionado 
    SendMessage(GetDlgItem(hwnd, IDC_LIST1), 
      LB_GETTEXT, (WPARAM)indice, (LPARAM)valor_item);

    int res = wsprintf(mensagem, 
      L"O valor do item selecionado é %s", valor_item);
  }

  // mostra o resultado
  MessageBox(NULL, mensagem, L"Mensagem",
    MB_ICONINFORMATION | MB_OK);

  break;


Link para compartilhar na Internet ou com seus amigos:

Java ::: Estruturas de Dados ::: Lista Ligada Simples

Estruturas de Dados em Java - Como obter a quantidade de nós em uma lista singularmente ligada usando Java

Quantidade de visualizações: 6794 vezes
Em algumas situações precisamos obter a quantidade de nós em uma lista singularmente ligada. Nesta dica eu mostro como isso pode ser feito. Aqui estou assumindo que você criou uma lista singularmente ligada que possui dois nós gerenciadores, ou seja, uma referência para o primeiro nó na lista e uma referência para o último nó.

Veja o código para um método que retorna a quantidade de nós na lista:

// método que permite exibir os valores de
// todos os nós da lista
public int tamanho() {
  int tam = 0; // representa a quantidade de nós na lista

  // vamos obter uma referência ao início da lista
  No no = inicio;
......


Veja como podemos chamar este nó a partir da classe principal da aplicação (Main.java):

public class Main {
  public static void main(String[] args) {
    // vamos criar uma nova lista
    Lista lista = new Lista();

    // insira alguns nós no início ou no final
......


Ao executar a aplicação você terá um resultado parecido com:

A lista possui 4 nós.


Java ::: Fundamentos da Linguagem ::: Variáveis e Constantes

Regras para a escolha de nomes de variáveis e constantes em Java

Quantidade de visualizações: 15317 vezes
Cada linguagem de programação tem seu conjunto próprio de regras e convenções para os tipos de nomes que você pode usar, e Java não é diferente. As regras e convenções para nomear variáveis em Java são as seguintes:

1) Nomes de variáveis são sensíveis a minúsculas e maiúsculas. Isso quer dizer que "cliente" é diferente de "Cliente". O nome de uma variável pode ser qualquer identificador legal: Uma sequência sem limites de tamanho de letras Unicode e dígitos, começando com uma letra, "$" ou o caractere de sublinhado "_" (underscore). A convenção, contudo, é sempre começar um nome de variável com uma letra e não "$" ou "_". Além disso, por convenção, o caractere $ nunca é usado. Você pode encontrar situações em que nomes gerados automaticamente podem conter o sinal $, mas evite usá-lo sempre que possível. O mesmo acontece com "_". Embora permitido, evite começar nomes de variáveis com "_". Espaços não são permitidos em nomes de variáveis.

2) Caracteres subsequentes podem ser letras, dígitos, $ ou "_". Convenções (e senso comum) se aplicam a esta regra também. Quando escolher nomes para suas variáveis, use nomes completos em vez de abreviações confusas. Isso tornará seu código mais legível. Nomes tais como "cliente", "nota", "quantidade", etc, são bem mais fáceis de entender e lembrar que "cl", "n", "qt", etc. Tenha também em mente que palavras-chaves e palavras reservadas da linguagem não podem ser usadas como nomes de variáveis.

3) Se o nome de variável que você escolher consistir de apenas um palavra, escreva-a toda em letras minúsculas. Ex.: cliente. Se consistir de mais de uma palavra, escreva a primeira letra da segunda palavra usando letra maiúscula. Ex.: nomeCliente. Se o nome for de uma constante, ele deve ser escrito todo em letras maiúsculas. Ex.: MODELO = 102. Se o nome da constante possuir mais de uma palavra, separe-as com o caractere "_". Ex.: NIVEL_BOLETO = 2.


GNU Octave ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o seno de um número ou ângulo em GNU Octave usando a função sin()

Quantidade de visualizações: 1427 vezes
Em geral, quando falamos de seno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função seno disponível nas linguagens de programação para calcular o seno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria.

No entanto, é sempre importante entender o que é a função seno. Veja a seguinte imagem:



Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles.

Assim, o seno é a razão entre o cateto oposto (oposto ao ângulo theta) e a hipotenusa, ou seja, o cateto oposto dividido pela hipotenusa. Veja a fórmula:

\[\text{Seno} = \frac{\text{Cateto oposto}}{\text{Hipotenusa}} \]

Então, se dividirmos 20 por 36.056 (na figura eu arredondei) nós teremos 0.5547, que é a razão entre o cateto oposto e a hipotenusa (em radianos).

Agora, experimente calcular o arco-cosseno de 0.5547. O resultado será 0.9828 (em radianos). Convertendo 0.9828 radianos para graus, nós obtemos 56.31º, que é exatamente o ângulo em graus entre o cateto oposto e a hipotenusa na figura acima.

Pronto! Agora que já sabemos o que é seno na trigonometria, vamos entender mais sobre a função sin() da linguagem GNU Octave. Esta função, que já vem embutido na ferramenta, recebe um valor numérico e retorna um valor, também numérico) entre -1 até 1 (ambos inclusos). Veja:

>> sin(0) [ENTER]
ans = 0
>> sin(1) [ENTER]
ans = 0.8415
......


Note que calculamos os senos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função seno mostrada abaixo:




Java ::: Dicas & Truques ::: Data e Hora

Como usar a classe Calendar do Java em suas aplicações - Java para iniciantes

Quantidade de visualizações: 20763 vezes
[Baseado na documentação Java] - A classe Calendar (pacote java.util) é uma classe abstrata (que não pode ser instanciada usando new) que fornece métodos para efetuar a conversão entre um momento específico no tempo e um conjunto de campos de calendário, tais como YEAR, MONTH, DAY_OF_MONTH, HOUR e assim por diante, e para manipular tais campos, por exemplo, obter a data da próxima semana. Um momento no tempo pode ser representado por um valor de milisegundos que é a diferença entre a data atual e a zero hora do dia 01/01/1970 (Epoch, January 1, 1970 00:00:00.000 GMT (Gregorian)).

Veja a posição desta classe na hierarquia de classes Java:

java.lang.Object
  java.util.Calendar
A classe Calendar implementa as interfaces Serializable, Cloneable e Comparable<Calendar> e sua subclasse conhecida é GregorianCalendar.

Esta classe também fornece campos e métodos adicionais para a implementação de um sistema concreto de calendário fora do pacote java.util. Estes campos e métodos são definidos como protected.

Assim como as demais classes sensitivas à localização (locale-sensitive), a classe Calendar fornece um método de classe chamado getInstance() que nos permite obter um objeto desta classe. Este método retorna um objeto Calendar cujos campos de calendário são inicializados com a data e hora atual. Veja:

import java.util.*;

public class Estudos{ 
  public static void main(String args[]){ 
......


Experimente executar este programa e terá um resultado parecido com:

java.util.GregorianCalendar[time=1228937781807,
areFieldsSet=true,areAllFieldsSet
=true,lenient=true,zone=sun.util.calendar.ZoneInfo
[id="America/Sao_Paulo",offset
=-10800000,dstSavings=3600000,useDaylight=true,
transitions=129,lastRule=java.uti
l.SimpleTimeZone[id=America/Sao_Paulo,offset=
-10800000,dstSavings=3600000,useDay
light=true,startYear=0,startMode=3,startMonth=9,
startDay=15,startDayOfWeek=1,sta
rtTime=0,startTimeMode=0,endMode=3,endMonth=1,
endDay=15,endDayOfWeek=1,endTime=0
,endTimeMode=0]],firstDayOfWeek=2,
minimalDaysInFirstWeek=1,ERA=1,YEAR=2008,MONTH
=11,WEEK_OF_YEAR=50,WEEK_OF_MONTH=2,DAY_OF_MONTH=
10,DAY_OF_YEAR=345,DAY_OF_WEEK=
4,DAY_OF_WEEK_IN_MONTH=2,AM_PM=1,HOUR=5,HOUR_OF_DAY
=17,MINUTE=36,SECOND=21,MILLI
SECOND=807,ZONE_OFFSET=-10800000,DST_OFFSET=3600000]


Como podemos ver, todas as informações relativas à data e hora que poderemos precisar estão contidas neste resultado.

Um objeto Calendar pode produzir todos os valores de todos os campos de calendário necessários para implementar a formatação de data e hora para uma determinada língua e estilo de calendário (por exemplo, Japanese-Gregorian, Japanese-Traditional). A classe Calendar define a faixa de valores retornados por determinados campos de calendário, assim como seus significados. Por exemplo, o primeiro mês do sistema de calendário tem o valor MONTH == JANUARY para todos os calendários. Outros valores são definidos por subclasses concretas, tais como ERA.


Java ::: Dicas & Truques ::: Recursão (Recursividade)

Java Avançado - Como listar o conteúdo de um diretório recursivamente

Quantidade de visualizações: 10703 vezes
Nesta dica mostrarei como podemos usar recursividade (recursão) para listar todo o conteúdo de um diretório. Este é um exercício para melhorar o seu entendimento de funções recursivas em Java.

Veja o código completo para o exemplo:

package arquivodecodigos;

import java.io.*;
import java.util.*;

public class Estudos {
  static int indentLevel = -1;

  public static void main(String[] args) {
    listPath(new File("c:\\estudos_c"));
  }

  static void listPath(File path) {
    File files[];
    indentLevel++;

    files = path.listFiles();

    Arrays.sort(files);
......


Ao executar este código nós teremos o seguinte resultado:

DICA.txt
estudos
  .vs
    estudos
      v16
        .suo
        Browse.VC.db
        ipch
          AutoPCH
            1dcb307edee5acf8
              ORIGEM.ipch
  Debug
    estudos.exe
    estudos.exe.recipe
    estudos.ilk
    estudos.log
    estudos.pdb
    estudos.tlog
      CL.command.1.tlog
      CL.read.1.tlog
      CL.write.1.tlog
      estudos.lastbuildstate
      link.command.1.tlog
      link.read.1.tlog
      link.write.1.tlog
    estudos.vcxproj.FileListAbsolute.txt
    Origem.obj
    vc142.idb
    vc142.pdb
  estudos.sln
  estudos.vcxproj
  estudos.vcxproj.filters
  estudos.vcxproj.user
  Origem.cpp
Estudos_C.dev
Estudos_C.exe
Estudos_C.layout
main.c
main.o
Makefile.win



Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
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.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 19 usuários muito felizes estudando em nosso site.