C# ::: Namespace System.Drawing ::: Image |
Como usar o método FromFile() da classe Image do C# para criar um objeto desta classe a partir de um arquivo de imagem JPG, GIF, PNG, BMP, etcQuantidade de visualizações: 7785 vezes |
Em algumas situações precisamos criar um objeto Image a partir de um arquivo de imagem JPG, GIF, PNG, BMP, etc. Isso pode ser feito por meio do método estático FromFile() da classe Image. Veja sua assinatura:public static Image FromFile(string filename) Veja um trecho de código no qual usamos o método FromFile() para criar um objeto Image a partir de uma imagem JPG em um determinado diretório. Em seguida usamos a Image construída para exibir a imagem em um PictureBox:
private void button1_Click_1(object sender, EventArgs e){
// constrói um objeto Image a partir do endereço da image
Image imagem = Image.FromFile(@"C:\estudos_csharp_wf\logo.jpg");
// atribui a imagem construída à propriedade Image
pictureBox1.Image = imagem;
}
É importante observar que o método FromFile() pode disparar as seguintes exceções: a) OutOfMemoryException - O arquivo não contém um formato de imagem válido ou o GDI+ não suporta o formato de pixel para o arquivo. b) FileNotFoundException - O arquivo de imagem indicado não existe. Assim, é sempre uma boa idéia colocar o código acima em um bloco try..catch. Veja como isso pode ser feito:
private void button1_Click_1(object sender, EventArgs e){
try{
// constrói um objeto Image a partir do endereço da image
Image imagem = Image.FromFile(@"C:\estudos_csharp_wf\logoi.jpg");
// atribui a imagem construída à propriedade Image
pictureBox1.Image = imagem;
}
catch (Exception ex){
MessageBox.Show("Houve um erro ao carregar a imagem: " +
ex.Message.ToString());
}
}
Há uma sobrecarga do método FromFile() com a seguinte assinatura: public static Image FromFile(string filename, bool useEmbeddedColorManagement) |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Ler um número inteiro, separar seus dígitos e imprimí-los individualmente separados por espaçosQuantidade de visualizações: 19970 vezes |
|
Pergunta/Tarefa: Escreva um programa Java console ou GUI que leia um inteiro de três dígitos, separe o valor em seus dígitos correspondentes e imprima-os individualmente separados por espaço. Por exemplo, se o usuário informar o valor 398, seu programa deverá exibir 3 9 8. Veja a saída que deverá ser gerada (use apenas os operadores aritméticos para a realização desta tarefa): Informe um valor inteiro de três dígitos: 398 Os dígitos separados são: 3 9 8 Veja a resolução comentada deste exercício usando Java console:
public static void main(String[] args){
// não se esqueça de adicionar um import para a classe Scanner
// import java.util.Scanner;
// vamos criar um objeto da classe Scanner
Scanner entrada = new Scanner(System.in);
// vamos solicitar ao usuário que informe um valor inteiro
// na faixa 100 a 999 (incluindo)
System.out.print("Informe um valor inteiro de três dígitos: ");
// vamos ler o valor informado
int valor = Integer.parseInt(entrada.next());
// vamos verificar se o valor está na faixa permitida
if(valor < 100 || valor > 999){
System.out.println("Valor fora da faixa permitida");
System.exit(0);
}
// vamos extrair os dígitos indidualmente, da esquerda para a direita
// vamos obter o primeiro dígito
int primeiro = valor / 100;
valor = valor % 100;
// vamos obter o segundo dígito
int segundo = valor / 10;
valor = valor % 10;
// vamos obter o terceiro valor
int terceiro = valor;
System.out.println("Os dígitos separados são: " + primeiro + " " +
segundo + " " + terceiro);
}
|
Python ::: wxPython ::: Eventos e Tratadores de Eventos |
Como tratar o evento wx.EVT_PAINT em suas aplicações wxPython - Interfaces gráficas no PythonQuantidade de visualizações: 485 vezes |
|
Nesta dica mostrarei como podemos tratar o evento wx.PaintEvent em suas aplicações wxPython. Este evento é disparado todas as vezes que uma janela é redesenhada, ou seja, quando fazemos o redimensionamento da janela ou a maximizamos. Veja o código completo para uma aplicação wxPython na qual interceptamos o evento wx.PaintEvent para exibir a hora atual na janela, usando a função dc.DrawText(). Note o uso da função strftime() para formatar o conteúdo de um objeto datetime.
# vamos importar o framework wxPython
import wx
# mais alguns imports necessários
from datetime import datetime
import locale
# classe que representará a janela principal da
# aplicação wxPython
class JanelaPrincipal(wx.Frame):
# o método construtor
def __init__(self, *args, **kw):
# chama o construtor da classe wx.Frame
super(JanelaPrincipal, self).__init__(*args, **kw)
# Configurações do usuário
locale.setlocale(locale.LC_ALL, '')
# chama a função que inicializa a GUI
self.InicializarGUI()
# método usado para gerenciar o evento OnPaint
def OnPaint(self, e):
# Obtém um datetime da data e hora atual
hoje = datetime.today()
# vamos obter o contexto de desenho
dc = wx.PaintDC(self)
texto = "Evento OnPaint gerado às: {0}".format(
hoje.strftime("%X"))
dc.DrawText(texto, 20, 20)
# função que inicializa a GUI do programa
def InicializarGUI(self):
self.Bind(wx.EVT_PAINT, self.OnPaint)
# definimos o tamanho da janela
self.SetSize((450, 350))
# define a cor de fundo da janela (Windows 10)
self.SetBackgroundColour(wx.WHITE)
# definimos o título da janela
self.SetTitle('O evento OnPaint')
# e centralizamos a janela
self.Centre()
# função principal do programa Python
def main():
# vamos criar a aplicação wxPython
app = wx.App()
janela_principal = JanelaPrincipal(None)
janela_principal.Show()
app.MainLoop()
if __name__ == "__main__":
main()
|
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como embaralhar os caracteres de uma string em C++ usando a função random_shuffle()Quantidade de visualizações: 13396 vezes |
|
Em algumas situações, tais como o desenvolvimento de um gerador de senhas aleatórias, pode ser necessário embaralharmos as letras de uma palavra. Em C++ isso pode ser feito por meio do uso da função random_shuffle() da STL (Standard Template Library). Não se esqueça de efetuar uma chamada a srand() antes do código que embaralha os caracteres da string. Veja o código C++ completo para o exemplo:
#include <string>
#include <iostream>
#include <algorithm>
#include <time.h>
using namespace std;
int main(int argc, char *argv[]){
// vamos iniciar o gerador de números
// aleatórios
srand(time(NULL));
// vamos criar uma string
string palavra = "JAVASCRIPT";
cout << "Palavra original: " << palavra << endl;
// vamos embaralhar as palavras da string
random_shuffle(palavra.begin(), palavra.end());
// exibe o resultado
cout << "Palavra com caracteres embaralhados: " << palavra << "\n\n";
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: Palavra original: JAVASCRIPT Palavra com caracteres embaralhados: RPSAITCVAJ |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Android Java - Como detectar um clique em um botão do Android usando o evento onClick no XML de layout LISP - Como converter Coordenadas Polares para Coordenadas Cartesianas em LISP - LISP para Engenharia Java - Programação Orientada a Objetos em Java - Como usar o modificador static em suas aplicações Java |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





