quarta-feira, 5 de janeiro de 2011

Cursos 24 Horas

Quem somos


O Cursos 24 Horas é uma empresa inscrita sob o CNPJ 09.428.468/0001-56 e fundada em 2002 com a missão de possibilitar o acesso à educação de qualidade para o maior número de pessoas. Desde então já qualificou mais de 120 mil alunos de todas as regiões do Brasil.

O nome Cursos 24 Horas é uma referência ao fato dos cursos ficarem disponíveis para acesso dos alunos durante 24 horas por dia, em todos os dias, incluindo sábados, domingos e feriados.

Metodologia


Após iniciar o curso, o aluno pode acessá-lo no seu tempo disponível, sem compromisso com dias ou horários fixos. Não há prazo mínimo ou máximo para concluir um curso, cada aluno faz no seu próprio ritmo e conclui no tempo que desejar.

Os cursos contam com material didático que pode ser impresso, além de uma equipe de tutores para tirar todas as dúvidas. Cada curso conta com dois módulos, com uma avaliação ao final de cada um deles.

Certificação


Imediatamente após concluir o curso já é possível visualizar e imprimir uma cópia do certificado no próprio site. O original é enviado pelos correios diretamente para o aluno, sem custo adicional.

O certificado emitido possui a mesma validade de um certificado de curso presencial e pode constar no currículo e/ou ser utilizado em Concursos Públicos, Universidades, Provas de Título, entre outros.

Para mais informações clique aqui, ou no banner



Sou apenas um afiliado do Cursos 24 Horas

terça-feira, 4 de janeiro de 2011

Criando um .JAR pelo prompt de comando- Java

Estarei ensinando como gerar um .jar de seu projeto pelo prompt de comando do Windows,
muitos estão acostumados a gerar através das IDEs (Eclipse, NetBeans e etc).

Já configurou as variavéis de ambiente ?
Se não passe aqui primeiro.
JAVA_HOME, CLASSPATH e PATH. O que são, para que servem e como configura-los

Se sim prossiga.
Mãos na massa:

Crie uma pasta com o nome do seu projeto no caso do exemplo "GerarJar"
coloque uma estrutura de package se quiser no exemplo "br.com.umcastec" e coloque uma pasta onde irá
ficar o MANIFEST.MF irei colocar na pasta "META-INF".
Logo em seguida crie os arquivos java "Main.java" e "Tela.java" e também o "MANIFEST.MF",

Um pouco sobre MANIFEST.MF
Se um arquivo JAR se destina a ser usado como um arquivo executável,
o arquivo de MANIFEST especifica a classe principal do aplicativo.
O arquivo de MANIFEST chamado MANIFEST.MF.
Fonte http://en.wikipedia.org/wiki/Manifest_file

Um pouco sobre JAR
Java Archive (JAR) é um arquivo compactado usado para distribuir um conjunto de classes
Java, um aplicativo java, ou outros ítens como imagens, XMLs, entre outros.
É usado para armazenar classes compiladas e metadados associados que podem constituir
um programa.
Fonte http://pt.wikipedia.org/wiki/Java_Archive

Vamos formar as estruturas dos arquivos.

GerarJar\META-INF\manifest.mf

Manifest-Version: 1.0
Main-Class: br.com.umcastec.Main

GerarJar\br\com\umcastec\Main.java

package br.com.umcastec;

public class Main{

public static void main(String args[]){
Msg msg= new Msg();
msg.jarmsg();
}

}


GerarJar\br\com\umcastec\Msg.java

package br.com.umcastec;

import javax.swing.JOptionPane;

public class Msg{

public void jarmsg(){
JOptionPane.showMessageDialog(null, "Gerei um jar pelo prompt");

}

}


Agora vamos compilar os arquivos ".java" para criar os arquivos ".class"

javac - comando para compilar os arquivos java
usa-se javac + o caminho onde encontra os arquivos java
mais comandos do javac digite no prompt "javac -help"

jar - comando para gerar o aruivo executavel do java

cvmf -são subcomandos do comando "jar"
-c -> Cria um novo arquivo.
-v -> Gerar a saída detalhada na saída padrão.
-m -> Incluem as informações do manifest
-f -> Especifica o nome do arquivo
mais comandos do jar digite no prompt "jar -help"


primeiro execute a seguinte linha para compilar
javac GerarJar\br\com\umcastec\*.java

segundo execute essa linha para criar o JAR
jar -cvfm GerarJar.jar META-INF\manifest.mf br\

Dica para você não precisar digitar as linhas acima de compilação e de criação do JAR
basta criar um arquivo ".bat" "Executar.bat" com as linhas citadas acima ficando

javac br\com\umcastec\*.java
jar -cvfm GerarJar.jar META-INF\manifest.mf br\

Feito isso o jar será gerado e estará pronto para ser executado.
Simples assim.

Feito e testado com Windows XP.
Dê seu feedback.

segunda-feira, 3 de janeiro de 2011

Abrir arquivo com aplicativo do S.O. - Java

Primiero post do ano, irei mostrar duas formas de se abrir arquivos com aplicativo padrão do S.O. ou aplicativo instalado.

import java.io.File;
import java.awt.Desktop;
import javax.swing.JOptionPane;

public class AbrirArquivo{

public static void main(String args[]){
AbrirArquivo abrirarquivo = new AbrirArquivo();
abrirarquivo.AbrirFile();
//abrirarquivo.AbrirFile02();
}

/*AbrirFile() : Arquivo.txt no windows é aberto com o Bloco de Notas ou outro editor ele pegará o padrão que você colocou para abrir essa extensão de arquivo ".txt".*/
public void AbrirFile() {

String caminho = "D:\\blog\\sources\\abrirarquivo.java";

try {
Desktop desktop = Desktop.getDesktop();
desktop.open(new File(caminho));
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Erro em abrir o arquivo: \n" + ex);
}

}

/*AbrirFile02(): Arquivo.txt você pede pra abrir com o Microsoft Office Word, basta passar o nome do executável do aplicativo nesse caso "winword.exe" .
pode ser também "notepad.exe" etc.
*/

public void AbrirFile02(){

String caminho = "D:\\blog\\sources\\abrirarquivo.java";

try {
Runtime.getRuntime().exec("cmd /c start winword.exe "+caminho);
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Erro em abrir o arquivo: \n" + ex);
}


}

}

quinta-feira, 30 de dezembro de 2010

Feliz Ano Novo a todos.

Desejo Feliz Ano Novo a todos, felicidades e boas festas e que 2011 seja repleto de felicidades, paz, harmonia, só alegria e etc,etc,etc,etc,etc.
E muito mais posts!kkkk

terça-feira, 28 de dezembro de 2010

Criando um Preloader - Java

Criando um preloader em java.
Basta adequar para sua nescessidade.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.beans.*;
import java.util.Random;

public class Preloader extends JPanel
implements ActionListener,
PropertyChangeListener {

private JProgressBar progressBar;
private JButton startButton;
private Task task;
private String status;

class Task extends SwingWorker"<"Void, Void">" {
/*
* Main task. Executed in background thread.
*/
@Override
public Void doInBackground() {
Random random = new Random();
int progress = 0;
//Initialize progress property.
setProgress(0);
while (progress "<" 100) {
//Sleep for up to one second.
try {
Thread.sleep(random.nextInt(1000));
} catch (InterruptedException ignore) {}
//Make random progress.
progress += random.nextInt(10);
setProgress(Math.min(progress, 100));
}
return null;
}

/*
* Executed in event dispatching thread
*/
@Override
public void done() {
Toolkit.getDefaultToolkit().beep();
startButton.setEnabled(true);
setCursor(null); //turn off the wait cursor
//taskOutput.append("Done!\n");
progressBar.setString("Terminou!");
}
}

public Preloader() {
super(new BorderLayout());

//Create the demo's UI.
startButton = new JButton("Iniciar");
startButton.setActionCommand("start");
startButton.addActionListener(this);

progressBar = new JProgressBar(0, 100);
progressBar.setValue(0);
progressBar.setStringPainted(true);

JPanel panel = new JPanel();
panel.add(startButton);
panel.add(progressBar);

add(panel, BorderLayout.PAGE_START);
setBorder(BorderFactory.createEmptyBorder(20, 20, 20, 20));

}

/**
* Invoked when the user presses the start button.
*/
public void actionPerformed(ActionEvent evt) {
startButton.setEnabled(false);
setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR));
//Instances of javax.swing.SwingWorker are not reusuable, so
//we create new instances as needed.
task = new Task();
task.addPropertyChangeListener(this);
task.execute();
}

/**
* Invoked when task's progress property changes.
*/
public void propertyChange(PropertyChangeEvent evt) {
if ("progress" == evt.getPropertyName()) {
int progress = (Integer) evt.getNewValue();
progressBar.setString(String.format(Progresso(task.getProgress()) + " %d%%", progress));

}
}

public String Progresso(int progresso){

if(progresso "<"= 10){
status = "Processando...\n";
}
if((progresso ">"= 10) & (progresso "<"= 30)){
status = "Aguarde...\n";
}
if((progresso ">"= 30) & (progresso "<"= 50)){
status = "Calculando...\n";
}
if((progresso ">"= 50) & (progresso "<"= 70)){
status = "Verificando...\n";
}
if((progresso ">"= 70) & (progresso "<"= 80)){
status = "Processando...\n";
}
if((progresso ">"= 80) & (progresso "<"= 100)){
status = "Finalizando...\n";
}

return status;
}

/**
* Create the GUI and show it. As with all GUI code, this must run
* on the event-dispatching thread.
*/
private static void createAndShowGUI() {
//Create and set up the window.
JFrame frame = new JFrame("Preloader");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//Create and set up the content pane.
JComponent newContentPane = new Preloader();
newContentPane.setOpaque(true); //content panes must be opaque
frame.setContentPane(newContentPane);

//Display the window.
frame.pack();
frame.setVisible(true);
}

public static void main(String[] args) {
//Schedule a job for the event-dispatching thread:
//creating and showing this application's GUI.
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGUI();
}
});
}
}

Obs: Nos sinais de "<>" foram colocados aspas "" por causa do Blogger! basta retira-los para funcionar normal!

Referência:
http://download.oracle.com/javase/tutorial/uiswing/components/progress.html#contentsapi

sábado, 27 de novembro de 2010

Capturar o título da Janela Ativa - Delphi

procedure CapturarTituloJanelaAtiva();
var
h : THandle;
titulo : PChar;
tamanho : Integer;
begin
try
h := GetForegroundWindow;
tamanho := (GetWindowTextLength(h)+1) * SizeOf(Char);
GetMem(titulo,tamanho);
fillchar(titulo^, tamanho,#0);
GetWindowText(h, titulo, tamanho);
Memo1.Lines.Append(string(titulo) + ' - Data/Hora: ' + DateToStr(date) + ' - ' + TimeToStr(Time) );
finally
FreeMem(titulo, tamanho);
end;

end;


Para este método foi utilizado um Componente Memo para exibir os Títulos das janelas