Cadastre-se Revistas DevMedia Cursos
 

Space de Jeferson Zonta
Busca Autor


Últimas 20 atualizações de Jeferson Zonta

Artigo - Relógio com a propriedade Canvas - Delphi

Crie um projeto em Delphi, com o nome que desejar, insira um "Timer" no projeto e mude a cor do formulario para "clBtnHighlight", Declare as seguintes variaveis globais :


    wHour, wMinuto, wSegundo : Word;
    xCentro, yCentro, Rad : integer;

No evento "Timer1Timer" do Timer, modifique ele para que fique da seguinte forma :


procedure TForm1.Timer1Timer(Sender: TObject);
var
  wSec : Word;
begin
  DecodeTime(Time, wHour, wMinuto, wSegundo, wSec);
  Refresh;
end;

Crie o procedimento abaixo :


procedure TForm1.DrawHand(xCentro, yCentro, Rad, BackRad: Integer;
  Angulo: Real);
begin
  Angulo := (Angulo +3 * Pi / 2);
  Canvas.MoveTo(xCentro - Round(BackRad * Cos(Angulo)),
                yCentro - Round(BackRad * Sin(Angulo)));
  Canvas.LineTo(xCentro - Round(Rad * Cos(Angulo)),
                yCentro - Round(Rad * Sin(Angulo)));
end;

No formulario, na propriedade "FormPaint", ajuste ela para que fique da seguinte maneira :


procedure TForm1.FormPaint(Sender: TObject);
var
  Angulo : real;
  i, x, y, size : integer;
begin
  xCentro := ClientWidth div 2;
  yCentro := ClientHeight div 2;
  if xCentro > yCentro then
    Rad := yCentro - 10
  else
    Rad := xCentro - 10;

  // Desenha o marcador de horas :)
  Canvas.Pen.Color := clYellow;
  Canvas.Brush.Color := clYellow;
  size := Rad div 50 +1;

  for I := 0 to 11 do
  begin
    Angulo := 2 * Pi * i / 12;
    x := xCentro - Round(Rad * cos (Angulo));
    y := yCentro - Round(Rad * sin (Angulo));
    Canvas.Ellipse(X - size, Y - size, X + size, Y + size);
  end;

  // Desenha o ponteiro de minutos...
  Canvas.Pen.Width := 2;
  Canvas.Pen.Color := clBlue;
  Angulo := 2 * Pi * wMinuto / 60;
  DrawHand(xCentro, yCentro, Rad * 90 div 100, 0, Angulo);

  // Desenha o ponteiro da Hora
  Angulo := 2 * Pi * (wHour + wMinuto / 60) / 12;
  drawHand(xCentro, yCentro, Rad * 70 div 100, 0, Angulo);

  // Desenha o ponteiro dos segundos
  Canvas.Pen.Width := 1;
  Canvas.Pen.Color 
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
13/04/2012 10:55:00





Artigo - Efetuar ligação: Android

Vamos neste artigo como podemos efetuar uma ligação usando o Android.

Iniciaremos criando um projeto Android o nome de EfetuaLigacao (selecione a plataforma 2.2)

Criando projeto

Figura 1.Criando projeto

Altere o layout do aplicativo para que fique da seguinte maneira (Para alterar o layout vai em "res -> layout -> main.xml)

Digitando número

Figura 2. Digitando número.

Altere o nome do componente editText1 para "edTelefone", e do Button1 para "btLigar" o xml do "main.xml" deverá ficar da seguinte maneira:


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="horizontal" >


    <EditText
        android:id="@+id/edTelefone"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10"
        android:text="99999999" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/btLigar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text=" Ligar " />

</LinearLayout>


Apos montado o layout do aplicativo, iremos configurar a permissao para efetuar a ligação, no "AndroidManifest.xml", antes da tag "" insira o seguinte codigo:

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
09/04/2012 07:39:00





Artigo - Modificando Papel de Parede - Delphi

Olá pessoa hoje vou mostrar como podemos modificar o papel de parede em uma aplicação feita em Delphi, vamos ver como é simples modificar esta opção usando o registro do Windows.

Vamos começar criando uma nova aplicação e salvando a mesma com o nome prjAlterarPapel.dproj. No formulário criado automaticamente pelo nosso Delphi, vamos adicionar na seção uses as unit "Registry" e "WinProcs".

Neste ponto vamos começar a configurar o Layout do nosso formulário, será bem simples apenas para ilustrar a funcionalidade principal, que é modificar o papel de parede. Para isso vamos precisar adicionar um TButton e um TOpenDialog.

Para facilitar a reutilização de código vamos implementar uma procedure chamada Alterar, veja como ficou nossa Unit até este momento:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Registry, WinProcs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    OpenDialog1: TOpenDialog;
  private
    { Private declarations }
    {Veja nossa procedure criada neste ponto}
    procedure Alterar(pImagemBMP: string; pTile: Boolean);  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

end.

Agora com nossa procedure declarada, vamos implementar a mesma, para isso pare o mouse em cima da procedure, ou dentro da Classe TForm1 e pressione CTRL + SHIF + C, logo será implementado automaticamente, e nela vamos declarar o código abaixo :


procedure TForm1.Alterar(pImagemBMP: string; pTile: Boolean);
var
  Reg : TRegIniFile;
begin
  reg := TRegIniFile.Create('Control Panel\Desktop');

  with Reg do
  begin
    WriteString('', 'Wallpaper', pImagemBMP);
    if (pTile) then
       WriteString('', 'TileWallpaper', '1')
    else
       WriteString('', 'TileWallpaper', '0')
  end;
  Reg.Free;
  SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, nil, SPIF_SENDWININICHANGE);
end;

Neste momento vamos executar a procedure criada anteriormente, para isso no evento OnClick do TButton, implemente o código para executar a mesma.

procedure TForm1.Button1Click(Sender: TObject);
begin
   if OpenDialog1.Execute then
   begin
       Alterar(OpenDialog1.FileName, False);
   end;
end;


Desta forma finalizo este artigo, espero que tenham gostado, ate a próxima.

Um abraço.

-->">
30/03/2012 17:10:00





Artigo - Chamar navegador de Internet no android

Nesse artigo irei mostrar um simples exemplo de como navegar na internet com o android.

Vamos lá, Crie um projeto android com o nome que desejar, no meu caso vou dar o nome de NavegadorInternet (selecione a plataforma 2.2)

Novo Projeto

Figura1. Novo Projeto.

Altere o layout do aplicativo para que fique da seguinte maneira (Para alterar o layout vai em "res -> layout -> main.xml):

Mudando Layout

Figura2. Mudando Layout.

Altere o nome do componente editText1 para "edUrl", e do Button1 para "btNavegar" o xml do "main.xml" deverá ficar da seguinte maneira :


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	android:orientation="vertical"
	android:background="#ffffff"
>
	<TextView
		android:layout_width="fill_parent" 
		android:layout_height="wrap_content" 
		android:text="Site :"
		android:textColor="#000000"
	/>
	<EditText
		android:id="@+id/edUrl"
		android:layout_width="fill_parent" 
		android:layout_height="wrap_content
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
30/03/2012 12:16:00





Artigo - Criando Relatório em Crystal Reports

Olá pessoal vamos falar neste artigo sobre o Crystal Reports, para isso você precisaria ter o mesmo instalado em sua maquina, caso não tenha, você pode baixar uma versão Trial do gerador de relatório no site http://crystalreports.com/products/software-products.asp

Após baixado o gerador crie um relatório indo em arquivo Novo -> Relatório em Branco, feito isso ele vai pedir que crie sua conexão com o banco de dados.

Conexão com o Banco de Dados
Figura 1. Conexão com o Banco de Dados

Obs: Crie a conexão com o seu banco desejado, no meu caso irei utilizar o DB2.

Feito a configuração com o banco, Selecione a opção Incluir comando:

Incluindo Comando
Figura 2.Incluindo Comando

Inclua o seu comando SQL, para poder trazer os dados para o relatório, no meu caso.

Irei fazer uma simples consulta na tabela de Notas do meu Banco.

Consulta em Tabela

Figura 3. Consulta em Tabela

No canto direito do Crystal Reports, nos Campos do "banco de dados", você terá todos os fields do seu comando SQL, para a criação do relatório, selecione os filds que desejar listar no relatório e araste eles até o relatório em suas posição desejada, ("Na barra possui varias opções para a modelagem do seu relatório, capôs para modelar o cabeçalho do seu relatório" + FiguraBarra), após modelado o seu relatório ele já poderá ser visualizado, conforme o exemplo abaixo :

Modelando Relatório

Figura 4. Modelando Relatório

Fico por aqui e até a próxima, espero que gostem do artigo.

-->">
27/03/2012 15:58:00





Artigo - Instalando Android 2.2 e o SDK do java no Eclipse

Nesse artigo irei explicar como Instalar o Eclipse com o Android 2.2 + o SDK do Java.

A principio configurar o Android do no eclipse é fácil e rápido, precisará conter as seguintes ferramentas "Eclipse" e o "SDK" do java, irá conseguir efetuar o download das ferramentas nos seguintes sites:

Eclipse : http://www.eclipse.org/downloads/ (obs: Baixe o "Eclipse IDE for Java EE Developers" de 212 MB)

SDK : http://developer.android.com/sdk/index.html (obs: Baixe o "installer_r17-windows.exe (Recommended)", se você estiver utilizando o windows, caso o contrario baixe de acordo com o seu sistema operacional).

Lembrando que o eclipse, ele não é uma ferramenta que se instala como o NetBeans, ele já vem em ".zip" assim você pode escolher o lugar que deseja salvar para utilizar ele.

Após descompactar o eclipse no lugar desejado, instale o SDK acima.

Agora inicialize o Eclipse, e configure ele no seguinte modo para que ele baixe o plugin ADT do eclipse.

Após Aberto o eclipse selecione a seguinte opção "Help > Install New Software", Exp:

Install New Software

Figura 1. In

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
27/03/2012 15:30:00





Artigo - Listar as Janelas abertas no Windows - C#

Olá pessoal, vamos a este artigo onde vou mostrar um simples modo de listar as janelas que estão abertas no Windows.

Crie um projeto com um nome qualquer, feito isso insira na tela, um componente, ListView e um Button.

no listView mude a propriedade "View" para "List", a tela irá ficar da seguinte maneira:



Agora logo acima do construtor do formulário adiciona o seguinte código :


        private delegate bool EnumWindowsProc(IntPtr hWnd, IntPtr data);

        [DllImport("user32.dll")]
        [return: MarshalAs(UnmanagedType.Bool)]
        private static extern bool EnumWindows(EnumWindowsProc lpEnumFunc, IntPtr data);

        [DllImport("user32.dll")]
        [return: MarshalAs(UnmanagedType.Bool)]
        private static extern bool IsWindowVisible(IntPtr hWnd);

        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        public static extern int GetWindowLong(IntPtr hWnd, int index);

        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        public static extern int GetDesktopWindow();

        [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
        public static extern uint SendMessageTimeout(IntPtr hWnd, uint Msg, int countOfChars, StringBuilder text,
                                                     uint pflag, uint uTImeoutj, out IntPtr result);

Obs: Esses métodos são nativos do Windows

Agora logo após o construtor, insira o seguinte método:


         private bool EnumProc(IntPtr hWnd, IntPtr data)
        {
            if (IsWindowVisible(hWnd) &&
               ((GetWindowLong(hWnd, -8) == 0) || (GetWindowLong(hWnd, -8) == GetDesktopWindow())) &&
               ((GetWindowLong(hWnd, -20) & 0x80) == 0))
            {
                StringBuilder sb = new StringBuilder();
                IntPtr res = IntPtr.Zero;

                SendMessageTimeout(hWnd, 0x000D, 256, sb, 0x0, 500, out res);

                listView1.Items.Add(sb.ToString());
            }
            return true;
        }

No evento Click do botão insira o código abaixo :


    EnumWindows(new EnumWindowsProc(EnumProc), IntPtr.Zero);

Feito isso, o projeto esta pronto :



Fico por aqui e até a próxima, espero que gostem do artigo.

-->">
13/02/2012 18:49:00





Artigo - Criando um Cadastro de Pessoa para android com (SQLCompact)


Vamos lá, Crie um projeto android com o nome que desejar, no meu caso vou dar o nome de cadPessoa.


Feito isso, vamos criar as seguintes classes "BuscarPessoa", "CadastroPessoa", "Pessoa", "PessoaListAdapter", "EditarPessoa", "RepositorioPessoa", "RepositorioPessoaScript", "SQLiteHelper", delete a class Activity que sera criada sozinha. devera ficar da seguinte maneira :


Agora vamos configura nossa aplicação para ser reproduzida na tela, ache o "AndroidManifest.xml", preste muita atenção nessa parte. de um duplo click nele, selecione a aba abaixo escrito "Application", remove a classe Activity que foi criada, sozinha, deverar ficar da seguinte maneira:


Agora na aba "AndroidManifest.xml" deixe da seguinte maneira :


<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.br.CadPessoa"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk android:minSdkVersion="8" />

    <application
        android:icon="@drawable/icon"
        android:label="@string/app_name" >
       <activity android:name="CadastroPessoa">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"></action>
                <category android:name="android.intent.category.LAUNCHER"></category>
            </intent-filter>
        </activity>
        <activity android:name="EditarPessoa"></activity>
        <activity android:name="BuscarPessoa"></activity>

    </application>

</manifest>

Obs: Nesse XML configurei as classes de visual, e informei a classe que será criada por inicio.

Crie uma pasta Chamada "drawable" acima das outras pastas "drawable *.*"

Nas pastas drawable adiciona as seguintes imagens (Imagens estarão disponíveis para download).

Agora vamos ajeitar nossas classes e o layout das telas.

Vamos criar primeiro os formulários para nosso visual, na pasta res, crie 3 arquivos "Android XML Layout File" com os seguintes nomes "pessoa_linha_tabela", "form_buscar_pessoa", "form_editar_pessoa", deleta o main.xml

No form_buscar_pessoa, de um duplo click, e na aba "form_buscar_pessoa.xml", deixe da seguinte maneira.


<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent" android:layout_width="fill_parent"
    android:background="#ffffff">
    <TableRow>
        <TextView android:id="@+id/text1" android:text="Nome:"
            android:textColor="#000000" />
        <EditText android:id="@+id/campoNome" android:width="240px" />
    </TableRow>
    <TableRow>
        <ImageButton android:src="@drawable/pesquisar" android:id="@+id/btBuscar" android:text="Buscar" />
    </TableRow>
    <TableRow>
        <TextView android:id="@+id/text2" android:text="Cpf:"
            android:textColor="#000000" />
        <EditText android:id="@+id/campoCpf"  />
    </TableRow>
    <TableRow>
        <TextView android:id="@+id/text3" android:text="Idade:"
            android:textColor="#000000" />
        <EditText android:id="@+id/campoIdade"  />
    </TableRow>
</TableLayout>

agora no form_editar_pessoa insira o seguinte codigo:

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_height="fill_parent" android:layout_width="fill_parent"
    android:background="#ffffff">
    <TableRow>
        <TextView android:id="@+id/text1" android:text="Nome:"
            android:textColor="#000000" />
        <EditText android:id="@+id/campoNome" android:width="240px" />
    </TableRow>
    <TableRow>
        <TextView android:id="@+id/text2" android:text="Cpf:"
            android:textColor="#000000" />
        <EditText android:id="@+id/campoCpf"  />
    </TableRow>
    <TableRow>
        <TextView android:id="@+id/text3" android:text="Idade:"
            android:textColor="#000000" />
        <EditText android:id="@+id/campoIdade"  />
    </TableRow>
    <LinearLayout android:layout_width="wrap_content"
        android:layout_height="fill_parent">
        <ImageButton android:src="@drawable/cancelar" android:id="@+id/btCancelar" android:text="Cancelar" 
            android:layout_width="wrap_content" android:layout_height="wrap_content" />
        <ImageButton android:src="@drawable/salvar" android:id="@+id/btSalvar" android:text=" Salvar " 
            android:layout_width="wrap_content" android:layout_height="wrap_content" />
        <ImageButton android:src="@drawable/excluir" android:id="@+id/btExcluir" android:text=" Excluir " 
            android:layout_width="wrap_content" android:layout_height="wrap_content" />
    </LinearLayout>
</TableLayout>

agora no pessoa_linha_tabela insira o seguinte codigo:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="wrap_content"
>
    <TextView android:id="@+id/nome"
        android:layout_height="30dip" android:layout_width="160sp"
    />
    <TextView android:id="@+id/cpf"
        android:layout_height="30dip" android:layout_width="100sp"
    />
    <TextView android:id="@+id/idade"
        android:layout_height="30dip" android:layout_width="40sp"
    />
</LinearLayout>

A parte de layout, já está pronta, agora vamos fazer a parte das classes, deixe a classe Pessoa da seguinte maneira :

package com.br.CadPessoa;

import android.content.ContentUris;
import android.net.Uri;
import android.provider.BaseColumns;


public class Pessoa {

    public static String[] colunas = new String[] { Pessoas._ID, Pessoas.NOME, Pessoas.CPF, Pessoas.IDADE };

    public static final String AUTHORITY = "com.br.CadPessoa.provider.pessoa";
    
    public long id;
    public String nome;
    public String cpf;
    public int idade;

    public Pessoa() {
        
    }

    public Pessoa(String nome, String cpf, int idade) {
        super();
        this.nome = nome;
        this.cpf = cpf;
        this.idade = idade;
    }

    public Pessoa(long id, String nome, String cpf, int idade) {
        super();
        this.id = id;
        this.nome = nome;
        this.cpf = cpf;
        this.idade = idade;
    }

    /**
     * Classe interna para representar as colunas e ser utilizada por um Content
     * Provider
     * 
     * Filha de BaseColumns que já define (_id e _count), para seguir o padrão
     * Android
     */
    public static final class Pessoas implements BaseColumns {
    
        // Não pode instanciar esta Classe
        private Pessoas() {
        }
    
        public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY + "/pessoas");
    
        public static final String CONTENT_TYPE = "vnd.android.cursor.dir/vnd.google.pessoas";
    
        public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/vnd.google.pessoas";
    
        public static final String DEFAULT_SORT_ORDER = "_id ASC";
    
        public static final String NOME = "nome";
        public static final String CPF = "cpf";
        public static final String IDADE = "IDADE";
    
        public static Uri getUriId(long id) {
            // Adiciona o id na URI default do /pessoas
            Uri uriPessoas = ContentUris.withAppendedId(Pessoas.CONTENT_URI, id);
            return uriPessoas;
        }
    }

    @Override
    public String toString() {
        return "Nome: " + nome + ", cpf: " + cpf + ", Idade: " + idade;
    }

    
}


Deixe a classe CadastroPessoa da seguinte maneira :

package com.br.CadPessoa;

import java.util.List;

import com.br.CadPessoa.Pessoa.Pessoas;

import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ListView;

public class CadastroPessoa extends ListActivity {
    protected static final int INSERIR_EDITAR = 1;
    protected static final int BUSCAR = 2;

    public static RepositorioPessoa repositorio;

    private List<Pessoa> pessoas;

    @Override
    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
        repositorio = new RepositorioPessoaScript(this);
        atualizarLista();
    }

    protected void atualizarLista() {
        // Pega a lista de pessoas e exibe na tela
        pessoas = repositorio.listarPessoas();

        // Adaptador de lista customizado para cada linha de uma pessoa
        setListAdapter(new PessoaListAdapter(this, pessoas));
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        menu.add(0, INSERIR_EDITAR, 0, "Inserir Novo").setIcon(R.drawable.novo);
        menu.add(0, BUSCAR, 0, "Buscar").setIcon(R.drawable.pesquisar);
        return true;
    }

    @Override
    public boolean onMenuItemSelected(int featureId, MenuItem item) {
        // Clicou no menu
        switch (item.getItemId()) {
        case INSERIR_EDITAR:
            // Abre a tela com o formulário para adicionar
            startActivityForResult(new Intent(this, EditarPessoa.class), INSERIR_EDITAR);
            break;
        case BUSCAR:
            // Abre a tela para buscar a pessoa pelo nome
            startActivity(new Intent(this, BuscarPessoa.class));
            break;
        }
        return true;
    }

    @Override
    protected void onListItemClick(ListView l, View v, int posicao, long id) {
        super.onListItemClick(l, v, posicao, id);
        editarPessoa(posicao);
    }

    // Recupera o id da pessoa, e abre a tela de edição
    protected void editarPessoa(int posicao) {
        // Usuário clicou em alguma pessoa da lista
        // Recupera a pessoa selecionado
        Pessoa pessoa = pessoas.get(posicao);
        // Cria a intent para abrir a tela de editar
        Intent it = new Intent(this, EditarPessoa.class);
        // Passa o id da pessoa como parâmetro
        it.putExtra(Pessoas._ID, pessoa.id);
        // Abre a tela de edição
        startActivityForResult(it, INSERIR_EDITAR);
    }

    @Override
    protected void onActivityResult(int codigo, int codigoRetorno, Intent it) {
        super.onActivityResult(codigo, codigoRetorno, it);

        // Quando a activity EditarPessoa retornar, seja se foi para adicionar vamos atualizar a lista
        if (codigoRetorno == RESULT_OK) {
            // atualiza a lista na tela
            atualizarLista();
        }
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();

        // Fecha o banco
        repositorio.fechar();
    }

}

Agora a classe EditarPessoa da seguinte maneira :

package com.br.CadPessoa;

import com.br.CadPessoa.Pessoa.Pessoas;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.EditText;
import android.widget.ImageButton;

public class EditarPessoa extends Activity {

    static final int RESULT_SALVAR = 1;
    static final int RESULT_EXCLUIR = 2;

    // Campos texto
    private EditText campoNome;
    private EditText campoCpf;
    private EditText campoIdade;
    private Long id;

    @Over
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
13/01/2012 17:51:00





Artigo - Calculando Raiz Quadrada

Olá pessoal hoje vou mostrar como calcular a raiz quadrada usando o Delphi, vamos ver como é simples.

Crie um projeto em Delphi e insira os seguintes campos abaixo
 ______________________
|Component |Nome       |
 ----------------------
|Edit      |edValor    |
|Button    |Calcular   |
 ----------------------

Sua tela deverá ter mais ou menos a seguinte aparência.



agora adiciona as seguinte funções abaixo :

function TForm1.RaizQ(eValorBase, eValorExpoente: Extended): Extended;
begin
   // Nao esqueça de adicionar a uses Math
   Result := Power(eValorBase, 1/eValorExpoente);
end;

function TForm1.RaizQuandrada(numero: real): real;
// Essa função é parecida com a sqrt do delphi..
var
  rProx, rVal, rRes :real;
begin
  rProx:=0.0000001;
  rVal:=1.0;

  repeat
     rRes := rVal;
     rVal := (rVal + (numero/rVal)) / 2;
  until
     (abs(rVal - rRes) <= rProx);

  Result := rVal;
end;


Obs: A primeira função estou utilizando uma função nativa do Delphi para fazer o calculo, já na segunda estou imitando a função SQRT que também é nativa do Delphi.

No evento OnClick do botão utiliza o seguinte código :

  if (Trim(edValor.Text) = '') then
    Exit;

  if ((Trim(edValor.Text) = '0')) then
  begin
    ShowMessage('Numero nao pode ser 0');
    edValor.SetFocus;
    Exit;
  end;

  ShowMessage(FloatToStr(RaizQ(StrToFloat(edValor.Text), 2)));
  ShowMessage(FloatToStr(RaizQuandrada(StrToFloat(edValor.Text))));


Feito isso está pronto o nosso projeto, até a próxima, obrigado pela atenção.

-->">
31/12/2011 19:39:00





Artigo - Trabalhando com PrintPreviewDialog

Veja neste artigo como trabalhar com PrintPreviewDialog.

Crie um aplicativo com um nome qualquer, nele insira um button, altere a propriedade Text do button para "Visualiza Print".


Antes do construtor do formulário declare a variável "Image shot;" :

Logo após o construtor, insira o seguinte código :

   private void printDoc_PrintPage(object sender, PrintPageEventArgs e)
   {
        e.Graphics.DrawImage(shot, 0, 0, shot.Width, shot.Height);
        e.HasMorePages = false;
   }


   private Image GetScreenShot()
   {
        Bitmap bmp = new Bitmap(this.Width, this.Height);
        Graphics g = Graphics.FromImage(bmp);
        g.CopyFromScreen(new Point(this.Left, this.Top), Point.Empty, this.Size);
        return bmp;
   }

Agora no Button1 de um duplo click nele e insira a seguinte linha de código abaixo:

PrintPreviewDialog previewDialog = new PrintPreviewDialog();
   PrintDocument printDocument = new PrintDocument();           
            
   shot = GetScreenShot();

   printDocument.DocumentName = this.Name;

   printDocument.PrintPage += new PrintPageEventHandler(this.printDoc_PrintPage);
   previewDialog.Document = printDocument;
   previewDialog.ShowDialog();

O Projeto ira ficar da seguinte maneira:


Desde já agradeço a atenção de todos, e até a próxima.

-->">
06/12/2011 18:00:00





Artigo - Criando um serviço utilizando C#


1 - Crie um projeto "Windows Service" com o nome de "Meu Servico", conforme a figura abaixo:



2 - Automaticamente ele ira trazer na tela o "Service1.cs[Design]", Click com o botão direito do mouse na tela e selecione a opção "add Installer", ele ficara da seguinte maneira :



3 - Vai  em propriedades do "ServiceInstaller1" e configure da seguinte maneira :

 ____________________________
|Description : | Meu Servico |
|DisplayName : | Meu Servico |
 ----------------------------

4 - Feito isso, agora na propriedade do "serviceProcessInstaller1" altere :

 ________________________
|Account : | LocalSystem |
 ------------------------

5 - Agora no "Service.cs", altere ele para que fique da seguinte maneira :

public partial class Service1 : ServiceBase
    {
        Timer timer1;

        public Service1()
        {
            InitializeComponent();
        }

        protected override void OnStart(string[] args)
        {
            timer1 = new Timer(new TimerCallback(timer1_Tick), null, 15000, 60000);            
        }

        protected override void OnStop()
        {
            StreamWriter vWriter = new StreamWriter(@"c:\testeServico.txt", true);

            vWriter.WriteLine("Servico Parado: " + DateTime.Now.ToString());
            vWriter.Flush();
            vWriter.Close();
        }

        private void timer1_Tick(object sender)
        {
            StreamWriter vWriter = new StreamWriter(@"c:\testeServico.txt", true);
       
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
21/11/2011 11:52:00





Artigo - Utilizando SilverLight

Nesse artigo vamos fazer um simples cadastro usando SilverLight.

1 - Vamos criar um projeto utilizando SilverLight, De o nome a ele de "MeuProjetoSilverLight"

2 - Insira na tela os seguintes componentes :

 ___________________________________________________
|Componente      | Nome    | Text                      |
 ---------------------------------------------------
|TextBox1         | txtCodigo   |                   |
|TextBox2         | txtNome    |                   |
|TextBox3         | txtTelefone |                   |
|TextBox4         | txtBairro   |                   |
|Label1           | lbCodigo    | Codigo :          |
|Label2           | lbNome    | Nome :            |
|Label3           | lbTelefone    | Telefone :        |
|Label4           | lbBairro    | Bairro :          |
|Button1          | btInserir   | Inserir           |
|Button2          | btGravar    | Gravar            |
|Button3          | btLimpar    | Limpar Registro   |
 ---------------------------------------------------
 
Obs: Para alterar o Texto do componente, se altera na propriedade "Content" ou altere direto no xaml, conforme a figura abaixo:




3 - O Visual do aplicativo devera ficar da seguinte forma :




4 - Antes do construtor do aplicativo insira o seguinte código :

    class Cliente
    {
       public Cliente(int codigo, string nome, string telefone, string bairro)
       {
           this.codigo = codigo;
           this.nome = nome;
           this.telefone = telefone;
           this.bairro = bairro;
        }

        public i
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
15/11/2011 00:00:00





Artigo - Utilizando uma dll feita em delphi no C#

Veja neste artigo onde explico como utilizar um dll desenvolvida em delphi, no C#. 
De maneira simples mostrarei o uso desta dll em uma trata são de erro forcado.


1 - No Delphi Crie um projeto "DLL Wizard", crie um formulário e nele insira os 
seguintes componentes :

 __________________________________________________
|Componente | Nome          | texto                |
 --------------------------------------------------
|Memo1      | MemoErro      |                      |
|panel1     | panel1        | Minha Dll Delphi \o/ |
|Form1      | FrmTelaErro   | Tela Erro            |
 --------------------------------------------------




2 - feito isso, deixe o seu aplicativo conforme o exemplo abaixo(No Formulário 
Criado)

unit Erro_dll;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TFrmTelaErro = class(TForm)
    MemoErro: TMemo;
    Panel1: TPanel;
    procedure FormShow(Sender: TObject);
  private
    FMostraErro: String;
    procedure SetMostraErro(const Value: String);
    { Private declarations }
  public
    property MostraErro : String read FMostraErro write SetMostraErro;
    
  end;

var
  FrmTelaErro: TFrmTelaErro;

  procedure ChamaErro(Erro : String);export;stdcal
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
31/10/2011 23:18:00





Artigo - Aplicativo Console em C#

Nesse artigo vamos ver um simples aplicativo Console, feito para calcular valores

1 - Primeiro passo vamos criar o projeto, de a ele o nome que desejar (Exp: CalculaValores)



2 - Feito isso iremos criar um "enum" com as opções que servirão para os cálculos, antes do comando "static void Main(string[] args)" insira o seguinte código :

enum TipoExpresao { Somar, Subtrair, Multiplicar, Dividir }

3 - Agora, após o comando acima inserir o seguinte comando que servira para efetuar o calculo do nosso aplicativo :

  static void calculaValor(float pValor1, float pValor2, TipoExpresao expresao)
  {
      float valor = 0;
      switch (expresao)
      {
          case TipoExpresao.Somar:
             valor = pValor1 + pValor2;
             break;
          case TipoExpresao.Subitrair:
             valor = pValor1 - pValor2;
             break;
          case TipoExpresao.Multiplicar:
             valor = pValor1 * pValor2;
             break;
          case TipoExpresao.Dividir:
             valor = pValor1 / pValor2;
             break;
      }
      System.Console.WriteLine("Resultado :" + valor);
  } 


4 - Agora dentro do método main ("static void Main(string[] args)") do projeto insira o seguinte código, que servira para fazer o pedido dos números e da expressão que o usuário deseja calcular :

   float Valor1 = 0;
   float Valor2 = 0;
   int Exprecao = 0;
   System.Console.WriteLine("Informe os valores:");

   System.Console.WriteLine("Primeiro valor:");
   Valor1 = float.Parse(Console.ReadLine());

   System.Console.WriteLine("Segundo valor:");
   Valor2 = float.Parse(Console.ReadLine());

   System.Console.WriteLine("Informe a Expresao, 0 - Somar, 1 - Subtrair, 2 - Multiplicar, 3 - Dividir");
   Exprecao = int.Parse(Console.ReadLine());

   calculaValor(Valor1, Valor2, (TipoExpresao)Exprecao);
   System.Console.ReadLine();


5 - Feito isso o projeto está pronto, execute o projeto e veja como ele ira ficar, Exp abaixo:





Desde já agradeço a sua atenção, Obrigado e abraço a todos. -->">
27/10/2011 00:00:00





Artigo - Utilizando TextBox: JavaME


Nesse artigo vamos ver um exemplo simples de como trabalhar com JavaME, utilizando TextBox.

1- Inicie o NetBeans, e crie um novo projeto JavaME, de a ele o seguinte nome "UtilizandoJAVAME", não esqueça de desmarcar a opção "Criar MIDlet Olá".



2- Apos isso, crie um pacote com o nome que desejar, no meu caso criarei com o nome de "modelo.beans", feito isso clique com o botão direito sobre o pacote criado, e crie uma "Midlet", de a ela o nome de "TextBoxMidlet"




3- Apos criado a classe Midlet, crie uma classe Java normal, de a ela o seguinte nome "EditorTextBox", feito isso ajeite ela para que fique conforme a classe abaixo:

package modelo.beans;

import javax.microedition.lcdui.Alert;
import javax.microedition.lcdui.AlertType;
import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Display;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.TextBox;
import javax.microedition.lcdui.TextField;
import javax.microedition.midlet.MIDlet;

/**
 * @author Jeferson Zonta
 */
public 
...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
27/10/2011 00:00:00





Artigo - Navegador de internet em VB

1 - Crie um novo projeto em VB, com o nome que desejar, feito isso insira os componentes abaixo no Formulário e renomeie eles conforme solicitado:

_________________________
|Componente   | Nome       |   
-------------------------
|TextBox     | txtURL     |   
|Panel1      | Panel1     |  
|Button1     | btVoltar   |
|Button2     | btAvancar  |
|button3     | btNavegar  |
|webBrowser1 | wBrouser   |
|Label1      | lbSite     |
-------------------------

Exp:

2 - No btNavegar insira o seguinte código :
   Dim sUrl As String
   sUrl = txtURL.Text

   If (String.IsNullOrEmpty(sUrl)) Then
     sUrl = "www.google.com.br"
   End If

   wBrowser.Navigate(sUrl)

3 - No btVoltar insira o seguinte código : 

   wBrowser.GoBack()

4 - No btAvancar insira o seguinte código :

    wBrowser.GoForward()

5 - no Componente wBrowser no evento DocumentCompleted insira o código abaixo :

    txtURL.Text = wBrowser.Url.ToString

Com isso finalizo este artigo, abraço a todos.

-->">
07/10/2011 16:41:00





Artigo - Captcha simples em C#

1 - Crie um projeto em c# com o nome que desejar, na tela principal insira os componentes abaixo:

________________________________________
|Componente | Nome      | Texto          |
----------------------------------------
|TextBox    | txtInformacao  |           |
|Button     | btValidar      | Validar   |
|PuctureBox | pbImagem       |           | 
|Form1      | FrmPrincipal   | Captcha   |
----------------------------------------

Exp:

2 - Agora, no código fonte do aplicativo, logo acima do construtor do form insira o seguinte código abaixo :

   string validaImagem = string.Empty;

   const string sLetra = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
   readonly string[] sFont = new string[] { "Courier New", "Impact", "Times New Roman", "Verdana", "Arial" };
   readonly Color[] cCor = new Color[]{Color.Aqua, Color.Black, Color.Blue, Color.Fuchsia, Color.Gray,
                                            Color.Green, Color.Lime, Color.Maroon, Color.Navy, Color.Olive,
                                            Color.Purple, Color.Red, Color.Silver, Color.Teal, Color.Yellow};

3 - Agora logo abaixo do construtor do form, Insira o método aba

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
07/10/2011 09:37:00





Artigo - Gravando Dados em um arquivo xml, em delphi

1 - Crie um novo projeto com o nome de salvaXml, localize a paleta "Data Access", insira no formulário um "ClientDataSet" e um "DataSource", mude o nome dos componentes conforme segue abaixo:
 ___________________________________________
| Componente     | Nome        | Texto      |
 -------------------------------------------
|ClientDataSet1  | cdsDados    |            |
|DataSource1     | dsDados     |            |
|Form1           | FrmPrincipal|Cad.Material|
 -------------------------------------------

2 - Click no dsDados e na paleta do "Object inspector" localise a opção DataSet, nela seleciona o cdsDados.

3 - De um duplo click no cdsDados, e insira os seguintes campos "Codigo", "Nome", veja na imagem abaixo como deverá ficar:



4 - Insira na tela 2 componente DBEdit, 2label, 1 DBGrid e 1 DBNavigator, ligue eles com o dsDados, segue a figura de exemplo abaixo:



5 - no Evento OnCreate do formulário insira o seguinte código:

 if not(cdsDados.Active) then
 begin
   cdsDados.CreateDataSet;
   cdsDados.EmptyDataSet;
   cdsDados.Active := true;
 end;



6 - selecione o cdsDados, no "Object Inspector" localize a propriedade "FileName" adicione "dados.xml", feito isso salve o seu projeto em uma pasta e rode o sistema, insira e grava dados, feche o sistema e na pasta do sistema vai conter o Arquivo dados.xml, e nele estará os dados gravado.

Agradeço a atenção e espero que esse simples artigo ajude em alguma coisa. -->">
06/10/2011 11:55:00





Artigo - Trabalhando com SmartDevice, em C#

1 - Vamos criar um projeto SmartDeviceProject, de a ele o nome de TesteLista,
feito isso segue o padrão abaixo:
 ---------------------------------------------
|Componente    | Nome         | Text          |
 ---------------------------------------------
|Form1         | FrmPrincipal | Sistema Exp   |
 ---------------------------------------------
No mainMenu1, insira as seguintes opções : "Sair", "Opções", "Inserir",
"Gravar", "Consulta Clientes", como segue a foto abaixo :



2 - No mainMenu, vai a opção sair, em suas propriedades, e ativa o onClick dele, apos isso insira o seguinte código:

  if (MessageBox.Show("Deseja sair do sistema", "Sair",MessageBoxButtons.YesNo, 
MessageBoxIcon.Question, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
  {
       Close();
  }



3 - Antes do construtor do formulário, insira o seguinte código :

    /* Class Cliente */
     public class Cliente {
            public Cliente(int codigo, string nome, string telefone)
            {
                this.código= codigo;
                this.nome = nome;
                this.telefone = telefone;
            }
            public int código{ get; set; }
            public string nome { get; set; }
            public string telefone { get; set; }   
        }
 
    /* Cria uma lista de clientes */
    List<Cliente> lstCliente = new List<Cliente>();


4 - No Formulário insira 3 Label, e 3 TextBox, e mude seu nome no seguinte padrão abaixo :
 ---------------------------------------------
|Componente    | Nome         | Text      |  
-----------------------------------------
|TextBox1      | txtCódigo   |           |
|TextBox2      | txtNome      |           |
|TextBox3      | txtTelefone  |           |
|Label1        | lbCódigo    | Código:  |
|Label2        | lbNome       | Nome :    |
|Label3        | lbTelefone   | Telefone: |
 -----------------------------------------
Veja a foto ...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
06/10/2011 10:59:00





Artigo - Utilizando struct com ArrayList no C#

1 - Primeiro passo é criar um aplicativo Windows Forms Application(de a ele o nome que desejar).

2 - Insira 3 TextBox, Label e 3 Button no formulario, dando a eles o seguinte  nomes

 ____________________________________
|Componente| Nome      | Text      |
|------------------------------------|
|Label1    | lbCodigo  |Codigo :     |
|Label2    | lbNome    |Nome :       |
|Label3    | lbValor   |Valor :      |  
|TextBox1  | txtCodigo |      |
|TextBox2  | txtNome   |      |
|TextBox3  | txtValor  |      |  
|Button1   | btGravar  |Gravar       |
|Button1   | btInserir |Inserir      | 
|Button1   | btFechar  |Fechar       |
|Form1     | FrmCadProd|Cad. Produto | 
 ------------------------------------
Exp: Figura1

Figura1

 
3 - No código fonte, antes do public FrmCadProd, insira o seguinte código :

  public struct sPruduto {
      public int Codigo;
      public string Nome;
      public float Valor;
  }

  ArrayList ArlListaProdutos = new ArrayList();

Não se esqueça de Utilizar o pacote Collection;
"using System.Collections"


4 - No Botão fechar de um duplo click e insira o seguinte codigo:


Close();


5 - No Botao Inserir de um duplo click, antes da linha de comando : "private 
void btInserir_Click(object sender, EventArgs e)" insira o seguinte codigo :

...
Exibição do post interrompida. Para ler conteúdo completo, clique aqui
05/10/2011 14:50:00





 

Formado em Tec. em Analise e desenvolvimento de sistema(UNIVEL), reside em Cascavel - PR, atualmente trabalhando na Coopavel Cooperativa Agroindustrial no desenvolvimento com C#, Delphi.
Arquivo de atualizações
 2012
 2011

Estatísticas do Autor:
Número de posts: 20
Características dos posts deste autor:
Conteúdo:
Utilidade:
4 0
 
DevMedia Group - Tel: (21) 3382-5038 - www.devmedia.com.br
Todos os Direitos Reservados a DevMedia Group