Há alguns tópicos eu falei sobre o PictureBox isoladamente, recebendo uma imagem estática. Agora vamos falar dele junto com o OpenFileDialog. Eles formam um par e tanto!
Bom, sem me prologar muito, a PictureBox, apenas relembrando, é uma caixa que pode armazenar imagens de formatos diversos. Já o OpenFileDialog é uma caixa de seleção de arquivos. Elas funcionam muito bem em conjunto, pois, para permitir que o usuário altere a imagem da PictureBox é necessário lhe dar uma forma de selecioná-la e esse é o papel do OpenFileDialog. A ligação entre eles é muito fácil de ser feita. Vamos abrir nosso pequeno programa de Controle de Clientes e, no formulário frmSobre, adicionar uma PictureBox e um botão, conforme a imagem abaixo:
A PictureBox eu nomeei de "picLogo" e o botão de "btnCarregarImagem".
Agora vamos adicionar o componente OpenFileDialog, arrastando-o para o formulário e nomeando-o como "ofdLogo", conforme mostra a imagem abaixo:
Vamos começar a adicionar código a estes componentes. Comecemos clicando duas vezes no botão "Carregar Imagem" para gerar o método Click e, dentro dele, vamos adicionar o código abaixo:
Foram necessários estes quatro parâmetros, pois estamos lidando com uma caixa de diálogo, que é um componente grande e com muitas variáveis, mas tudo é bastante simples e intuitivo. De qualquer forma, abaixo segue o código comentado:
Como próximo passo vamos clicar duas vezes no OpenFileDialog:
Com isso criaremos o método FileOk. Agora, dentro dele, criaremos o seguinte código:
picLogo.Image = Image.FromFile(ofdLogo.FileName);
O que este código faz é adicionar à propriedade Image da PictureBox, uma imagem do arquivo que foi selecionado pelo OpenFileDialog e que será enviado através do seu método FileName, que retorna uma string com o caminho do arquivo. Parece complicado, mas não é!
Agora vamos executar o código, abrir o formulário "Sobre o Programa" e clicar em “Carregar Imagem”. Você terá uma tela parecida com a imagem abaixo:
Vou selecionar um arquivo qualquer para ilustrar como ele será inserido no PictureBox.
Aí está a imagem inserida, no entanto ela não coube na PictureBox e está sendo exibido apenas um trecho da mesma. Isso pode ser facilmente corrigido alterando a propriedade SizeMode, conforme ilustra a figura abaixo:
Alterando o valor desta propriedade para StretchImage, ela será ajustada automaticamente na PictureBox. Vou executar o código novamente agora para demonstrar a diferença, vejam:
Agora a imagem está ajustada à PictureBox!
Podemos adicionar uma borda, conforme explicado no tópico apenas sobre PictureBox, alterando a propriedade BorderStyle e deixando-a assim:
É isso! Com este tópico demonstrei como utilizar o OpenFileDialog para carregar uma imagem para uma PictureBox. A forma de utilizá-lo para outros tipos de arquivos é a mesma!
Na sequência falarei sobre várias propriedades do Visual C# que ajudarão a programar o código ou a melhorar a aparência dos formulários.
HARDWARE
Entendendo o seu computador
O que há dentro do meu computador?
Existem alguns componentes fundamentais presentes dentro do seu computador e é muito importante que você conheça um pouco sobre eles, seja para argumentar com algum vendedor durante a compra de um novo PC ou para identificar alguma atitude desleal de algum técnico que esteja te passando um orçamento para reparo. Na seção Raio-X aqui do Contém Bits você pode conhecer e entender mais detalhadamente sobre cada componente, ou também pode clicar abaixo no componente que deseja, para conhecê-lo melhor.
Você Sabia?
Tomb Raider - O Filme
Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.
Final Fantasy X
O jogo Final Fantasy X para o Sony Playstation 2 vendeu, apenas no dia do seu lançamento, 1.455.732 cópias, estabelecendo um recorde de vendagem para as primeiras 24 horas de um game. Méritos da SquareSoft, que desenvolveu um excelente produto!
Computadores de 1,5 tonelada
Em 1949 a revista Popular Mechanics fez uma previsão para o futuro, dizendo: "Um dia os computadores pesarão menos do que 1,5 tonelada". E pensar que temos smartphones capazes de realizar milhões de vezes mais operações do que os computadores daquela época.
Duck Hunt
Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".
Pac Man
Apenas no ano de 1982, o clássico Pac Man vendeu mais de 400 mil máquinas de fliperama em todo o mundo e recebeu cerca de 7 bilhões de moedas nestas máquinas. Saiba mais.
Cuidados com o notebook
Utilizar seu notebook em camas, sofás ou qualquer superfície macia pode obstruir as entradas e saídas de ar, elevando a temperatura e provocando danos a diversos componentes. Utilize-o sempre sobre uma superfície rígida. Saiba mais aqui.
Muitos aplicativos
Instalar vários aplicativos com o mesmo propósito, como editores de texto, reprodutores de músicas ou vídeos e até programas antívirus sobrecarregam o seu sistema operacional e ainda ocupam espaço desnecessário em seu HD. Tenha apenas um bom programa para cada função.
Nintendo Entertainment System
O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.
Playstation
O Playstation só nasceu porque uma parceria entre Sony e Nintendo, para desenvolver uma unidade de CD para o Super Nintendo, fracassou. Clique aqui e saiba mais.
Asteroids
O título Asteroids, do Atari, possui recorde de pontuação há 30 anos. Em 1982 um americano chamado Scott Safran atingiu a marca de 41.336.440. Atualmente ele faz parte de um minúsculo grupo de jogadores que conseguiram manter seus recordes por mais de 30 anos.
Recorde de patentes
A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.
Space Invaders
A partida mais longa do clássico Space Invaders durou incríveis 38 horas e 32 minutos e esta façanha foi conseguida por um jogador de apenas 12 anos! O jogo, claro, podia ser pausado para alimentação e descanso, mas ainda assim o recorde, estabelecido no dia 02/09/1980, ainda não foi quebrado. Saiba mais.
Inteligência artificial
O primeiro jogo a fazer uso de uma Inteligência Artificial foi o Mouse in the Maze, criado em 1955, na União Soviética. Você pode saber mais sobre ele clicando aqui.