APIs - Duvida - SOLUCIONADO!  XML
Índice dos Fóruns » Java Avançado
Autor Mensagem
AmandaBuarqueLima
What is classpath?
[Avatar]

Membro desde: 18/01/2012 12:08:34
Mensagens: 8
Offline

Preciso abrir a WebCam do meu PC utilizando a API do windows avicap.dll com programação java.
Obs: Não quero utilizar a API JMF do java, assim é muito fácil e ja fiz isto. Estudo outras linguagens como a .NET e há diversos exemplos na internet para esta LP. Portanto preciso abrir a webcam com a avicap.dll em LP Java.

Informações adicionais que estou usando: Windows Vista Ultimate, NetBeans 7.0 e JNA.jar


Criei 2 classes, 3 interfaces e 1 JFrame:

Interface 1: Avicap32.

/* Referências:
MICROSOFT (Org.). Acessar imagem da WebCam. Disponível em: <http://social.msdn.microsoft.com/Forums/pt-BR/vscsharppt/thread/4df4fc93-a2d5-401b-ab4a- 056e00f47ec7>. Acesso em: 10 jan. 2010.

MICROSOFT (Org.). CapCreateCaptureWindow function. Disponível em: <http://msdn.microsoft.com/en-us/library/windows/desktop/dd756879(v=vs.85).aspx>. Acesso em: 10 jan. 2010.

ORACLE (Org.). Class System. Disponível em: <http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/System.html>. Acesso em: 10 jan. 2010.*/




Classe 2: User32
Obs: A terceira classe MapHWND esta extendida na User32, devido ao Handle (identificador da janela), que preciso lançar, segundo referências da assinatura da API avicap.dll, como parâmetro ao utilizar o método capCreateCaptureWindowA. A terceira classe mapeia o que é necessario para identificar o HWND.





Classe 3: MapHWND




Classe 4: FrameWebCam

Objetos: um JPanel nomeado de jpIm e um botão.

No evento onclick (ou Action performace) do Botão esta o código:




Portanto, a Câmera chega a ligar mas, não há imagem nenhuma!

Ja tentei:
1. Criar um Component para adicionar ao jpIm.add(component()). O maior problema que encontro nesta situação é um valor nulo devido ao código necessitar que eu instancie o Component com null ou new.


Por favor me ajudem. Alguém tem alguma solução? Se possível, por favor, ao encontrar o problema me explique porque. Obrigada.



Todo o código acima escrito em JAVA (NetBeans) foi baseado no código, TESTADO E VI QUE FUNCIONA, abaixo em C# (.NET):

This message was edited 3 times. Last update was at 29/01/2012 18:15:18

AmandaBuarqueLima
What is classpath?
[Avatar]

Membro desde: 18/01/2012 12:08:34
Mensagens: 8
Offline

Pelo amor de Deus, alguém me ajude
AmandaBuarqueLima
What is classpath?
[Avatar]

Membro desde: 18/01/2012 12:08:34
Mensagens: 8
Offline

Ironlynx
Moderador
[Avatar]

Membro desde: 02/05/2003 01:06:41
Mensagens: 3515
Localização: The other side of the screen
Offline

1. Criar um Component para adicionar ao jpIm.add(component()). O maior problema que encontro nesta situação é um valor nulo devido ao código necessitar que eu instancie o Component com null ou new.

Na verdade, nunca funcionaria, pois vc esta dando new em quê?Qual o componente eh o player(libU?)ele deve ser tacado no jPanel antes do setVisible.E ninguem usa mais JMF.Use DirectShow Java ou alguma API menos arcaica.

OBS.:Use as tags code quando for postar codigo pois fica muito mais facil para lermos.



Da uma lida aqui:
http://www.guj.com.br/java/262227-web-cam-em-swing



Não basta persistir...tem que prevalecer!
Ironlynx
Anarquista de Sistemas
http://osereojava.blogspot.com/
[WWW]
AmandaBuarqueLima
What is classpath?
[Avatar]

Membro desde: 18/01/2012 12:08:34
Mensagens: 8
Offline

Pois é querido. Abrigada pelas dicas. JMF realmente é arcaico e muito fácil assim como a DIRECT SHOW, a diferença esta que a JMF foi desenvolvida 'diretamente' para java enquanto a Direct Show é desenvolvida pela Microsoft para prover de recurso para Linguagens de Programação, porém esta API, DirectShow não é nativa no Windows XX.XX, por ventura resolverão copiar as classes da DLL para uma versão em JAR e virou DirectShow Java.Ao contrário da AVICAP.DLL, no entanto dificilmente se encontra documentação como neste link http://www.andreavb.com/API_USER32.html. Se houvesse algo deste nível na internet, com certeza já haveria resolvido o problema. Dificilmente encontramos certas documentações do windows, nem na DEEP WEB encontrei, graças a deus existe JAVA e a politica GNU porém ainda falta detalhes.

O que realmente quero é abrir a CAM utilizando JNA e a API nativa do windows AVICAP.DLL, ou seja, não quero usar JMF e não usar outra API (alternativa) como a DirectShow para resolver isso, somente a API do java JNA e a API nativa do Windows AVICAP.DLL. Ja pesquisei neste site e não existe isso, somente o meu post. Este é um problema e quero resolve-lo, ja conheço a conexão com JMF, arcaica mas conheço. Também conheço com a nova API Direct Show, mas desconheço a "LIGAÇÃO DIRETA" (DIGAMOS ASSIM) com a API avicap.dll.

OBS: Se você me der a solução do problema, moderador, posso até migrar para outra opção menos arcaica, do contrário, não estarei resolvendo meu problema, apenas pulando para algo "mais fácil" como alternativa de algo que não resolvi, e não é isso que quero.

Mexi no meu código e olha como esta, porém ainda encontro dificuldades pois a imagem na CAM não abre, só há um fundo preto que é a responsabilidae deste código:


libU é a abreviação de library User, e a libA library Apicap. Estas classes não podem ser instanciadas, como podemos ver não há CONSTRUTOR da classe, são INTERFACES: Elas só podem ser IMPLEMENTADAS e nunca INSTANCIADAS pelo fato serem a mais alta camada de abstração. Contudo, JAMAIS PODEREI USAR 'NEW', pois não existe construtor numa INTERFACE.

Realmente esta difícil de achar DOCUMENTAÇÃO, FUI ENCONTRAR ALGUMA COISA SOMENTE NO BANDAI, na CHINA, rsrsrs (http://www.guj.com.br/java/263150-apis---duvida#1375763), veja como esta:

obs1: o system, é somente para saber o que esta acontecendo, testes.
obs2: A class APICAP32 foi incrementada:



This message was edited 7 times. Last update was at 23/01/2012 21:39:48

AmandaBuarqueLima
What is classpath?
[Avatar]

Membro desde: 18/01/2012 12:08:34
Mensagens: 8
Offline

To ficando louca JÁ, é BAIDU: http://wenku.baidu.com/view/5f2dc8fc04a1b0717fd5ddc1.html

obs: Desculpe minha ignorância, posso estar enganada por ser nova aqui, mas, neste site realmente não existe a opção para excluir posts no Notícias, artigos e o maior fórum brasileiro sobre Java.

E tem mais, no tópico esta JAVA AVANÇADO e não JAVA BÁSICO, acredito que há respostas para o meu problema.

Obrigada.

This message was edited 4 times. Last update was at 23/01/2012 20:53:44

Ironlynx
Moderador
[Avatar]

Membro desde: 02/05/2003 01:06:41
Mensagens: 3515
Localização: The other side of the screen
Offline

O que realmente quero é abrir a CAM utilizando JNA e a API nativa do windows AVICAP.DLL, ou seja, não quero usar JMF e não usar outra API (alternativa) como a DirectShow para resolver isso, somente a API do java JNA e a API nativa do Windows AVICAP.DLL. Ja pesquisei neste site e não existe isso, somente o meu post. Este é um problema e quero resolve-lo, ja conheço a conexão com JMF, arcaica mas conheço.

não mexo com nada relativo a isso há anos(audio e video no java), mas quando precisei, a própria JMF não me atendia.Sentei com um amigo e fizemos um workaround na JMF para tocar um video com um dado codec e foi um parto(funcionou, mas foi um parto de quintuplos!haha).Sugiro abrir o codigo da JMF e ver como ela faz o serviço.

libU é a abreviação de library User, e a libA library Apicap. Estas classes não podem ser instanciadas, como podemos ver não há CONSTRUTOR da classe,
são INTERFACES: Elas só podem ser IMPLEMENTADAS e nunca INSTANCIADAS pelo fato serem a mais alta camada de abstração. Contudo, JAMAIS PODEREI USAR 'NEW',
pois não existe construtor numa INTERFACE.

Tenho plena consciencia dos poderes de uma interface, e o motivo principal de uma interface não ser instanciada é porque ela é um CONTRATO para com a classe de um
comportamento a ser seguido.Mas quando li isso:
pensei que libU era uma classe, ou que vc explicitamente implementaria essa interface em algum lugar.Eu carregaria as libs e
implementaria as interfaces na classe *player* da aplicação. Aliás, é o que parece que o exemplo que vc postou com o C# faz(não entendo picas de C#, apenas falo da sintaxe parecida)

E quanto a dar um NEW numa interface, tenha cuidado que isso funciona:


Mas conte-nos qualquer eventual progresso, o assunto é interessante.

Não basta persistir...tem que prevalecer!
Ironlynx
Anarquista de Sistemas
http://osereojava.blogspot.com/
[WWW]
juliocbq
GUJ Expert
[Avatar]

Membro desde: 13/11/2008 12:10:18
Mensagens: 3927
Offline

AmandaBuarqueLima wrote:To ficando louca JÁ, é BAIDU: http://wenku.baidu.com/view/5f2dc8fc04a1b0717fd5ddc1.html

obs: Desculpe minha ignorância, posso estar enganada por ser nova aqui, mas, neste site realmente não existe a opção para excluir posts no Notícias, artigos e o maior fórum brasileiro sobre Java.

E tem mais, no tópico esta JAVA AVANÇADO e não JAVA BÁSICO, acredito que há respostas para o meu problema.

Obrigada.


Eu não entendo porque as pessoas ainda insistem em soluções como jmf ou java para questões de multimídia. Usar java com multimídia é descabido porque em 100% dos casos você precisa criar uma interface para um assembly. Vai precisar escrever em c ou então usar c++ para poder controlar a nível de hardware(os drivers ) do dispositivo.

Se utilizar jmf em um projeto, não dou mais que 6 meses para que você tenha necessidade de refatorá-lo, pois a mesma utiliza a vfw para captura de vídeo. Esse modelo já morreu com windows xp. O medelo novo utiliza vmr que é acelerada a hardware com direct3d.

É melhor pagar a licença da dsj: http://www.humatic.de/htools/dsj.htm

Em suma, é muito mais fácil escrever um software em c++ para esse tipo de solução do que escrever um em java. Se precisar de uma linguagem mais moderna, o c# é uma ótima opção também.

www.citrox.com.br
AmandaBuarqueLima
What is classpath?
[Avatar]

Membro desde: 18/01/2012 12:08:34
Mensagens: 8
Offline

O que mais me irrita é quando você pergunta alguma coisa, e pessoa vem com blábláblá... e não te dá nenhuma resposta convivente. O fórum acaba sendo um bate papo. E pior que nao acrescenta nada, e problema continua até que você mesmo insiste e por fim consegue alguma coisa que se caso fosse depender disto, esta ferrado(a)! rsrs

O tal GUI Expert acima escreveu:
Atenção: Expert em que? Foi eu quem acabo de resolver o problema que postei a algumas semanas atrá no fórum: GUJ.com.br - Noticias, artigos e o maior fórum brasileiro sobre java, ual o maior fórum brasileiro, isto faz de mim oque? rrss.

Eu não entendo porque as pessoas ainda insistem em soluções como jmf ou java para questões de multimídia. Usar java com multimídia é descabido porque em 100% dos casos você precisa criar uma interface para um assembly. Vai precisar escrever em c ou então usar c++ para poder controlar a nível de hardware(os drivers ) do dispositivo.


Emprimeiro lugar, deixei em negrito acima nos posts, que QUERO UTILIZAR JNA PARA CHAMAR AVICAP.DLL e JÁ CONEÇO CONEXÕES COM JMF, DIRECTSHOW E BLÁBLÁBLA, eu não curto coisa fácil!

Eu também não entendo porque as pessoas se limitam tanto sobre questões que não há solução pronta na internet e rapidamente migram áquilo que encontraram de prontidão.

Certamente, os fóruns, como este, servem para auxiliarem no processo de pesquisa para uma solução. A maioria das pessoas, pelo que vejo, não estão familiarizadas com DOCUMENTAÇÃO. E justamente isso é uma tremenda ironia, visto que o fórum trata diretamente com programação Java, onde os usuários, pelo menos saibam porque estão aqui e fazem alguma coisa, fazem parte, do que meu grande Dr.Prf. sempre nos diz, a geração Y.

A maior causa da crise do Software é justamente a falta de documentação, ou a mania de sair programando qualquer coisa sem ao menos planejar o que ta fazendo, como pelo menos um algoritmo que seja ou por fim a UML.

Bom, parece que eu fui a unica que resolveu o problema então!


Vamos lá no post abaixo:

This message was edited 3 times. Last update was at 29/01/2012 18:00:36

AmandaBuarqueLima
What is classpath?
[Avatar]

Membro desde: 18/01/2012 12:08:34
Mensagens: 8
Offline

Objetivo: Abrir a WebCam utilizando JNA e a API nativa do windows avicap.dll

Obs: O resultado abaixo é diretamente o que acabei de fazer, testes. Quando acabar tudo notifico em um pdf com explicações detalhadas sobre cada linha!
Ferramentas que estou utilizando:

1. Sistema Operativo Windows 7
2. Netbeans 7.0.1. Pode ser baixado aqui:http://netbeans.org/downloads/" target="_new" rel="nofollow"> http://netbeans.org/downloads/
3. API JNA. Baixe aqui:http://www.4shared.com/file/GmkHyM5v/jna.html" target="_new" rel="nofollow"> http://www.4shared.com/file/GmkHyM5v/jna.html


obs: Se você for implementar isso meu filho, pelo amor de Deus, leia antes,não deixe a preguiça lhe pegar!. E to referenciando Wikipedia pelo fato disto não ser artigo cientifico.

Introdução

Irei tratar sobre a conexão com uma webcam nativa(Geralmente para notebooks) ou USB com JNA em Linguagem de Programação Java.

O que é API?
Segundo a wikipedia (2012), é a abreviação para Application Programming Interface (Interface de programação para aplicações). Dentro de uma API contém rotinas, para serem utilizadas em algum aplicativo. Ex: .dll, .jar, etc, podemos chama-las também de bibliotecas.

O que é JNA?
Segundo a Wikipedia (2012), é a abreviação para Java Native Access (Acesso Nativo Java). É uma API do java que nos permite abrirmos outras API que não são nativas do Java como por exemplo dlls do windows.

Isto é bem interessante. Há soluções para este problema como JMF, e DirectShow, que nada mais são que APIs. Mas, eu não gosto de coisa fácil, eu irei utilizar a API Nativa do Windows chamada avicap.dll. Esta API esta localizada na pasta c:\windows\system32\avicap.dll.

Como venho dizendo, antes de sair programando é necessário: 1. Estabelecer um objetivo (O que você quer fazer?); 2. Fazer um levantamento Bibliográfico sobre o assunto, geralmente as monografias atestam o que alguém ja testou e funcionou além da documentação dos fabricantes; 3. Planejar o que irá fazer pode ser UML ou algum algoritmo e por fim 3. Comece a programar na linguagem escolhida.
O fato é que sem se basear em alguma coisa você não faz nada!

Então, o sistema politico da microsoft é complicado pois dificilmente você vê alguma documentação sem um preço a pagar, diferente da politica GNU.
Toda o sistema operacional windows xp até atual, possui a API avicap.dll. E então, o que há dentro dela? Sabemos que é uma Interface, então possuem métodos que se comunicam com o sistema operacional. Então precisamos saber que métodos são estes, afinal ninguém é adivinho. É aqui que precisamos da documentação!
Primeiramente quem a desenvolveu? Se esta no Windows, provavelmente a Microsoft... Procurando na maravilhosa internet chego a isto: http://social.msdn.microsoft.com/Forums/pt-BR/vscsharppt/thread/4df4fc93-a2d5-401b-ab4a- 056e00f47ec7

Muito escasso para o meu caso, não tenho conhecimentos específicos do sistema operacional Windows. Para isso deveria pesquisar sobre o assunto e mesmo assim a documentação seria paga. Pra quem quer investir compensa, porém meu tempo é curto. Então, passamos a auxiliar nosso conhecimento em fóruns e na vasta internet. Por fim cheguei a isto: http://wenku.baidu.com/view/5f2dc8fc04a1b0717fd5ddc1.html . Pode acreditar, fui encontrar alguma implementação com explicação na China! E valeu, passei a entender melhor o tratamento das assinaturas pelo que fato de ser em uma linguagem que entendo a C.


Com isso, consegui mapear a avicap.dll chamando com JNA em programação Java na IDE Netbeans (eu odeio Eclipse). Vamos lá, passo-a-passo:


Obs: O teste foi realizado com uma WebCam USB e na CAM do meu noteboock! Certifique-se de que a USB que você vai plugar no seu computador não tenha drive nenhum!

Para este caso USB, vamos criar um aplicativo que receberá a imagem da cam. Será um pequeno Software Universal, provavelmente irá funcionar para todos os dispositivos de imagem USB que poderão ser plugados em seu computador. Isso eu não testei ainda, mas vou dar uma de profeta. Porque será hein?! rs

1. Plug a WebCam USB no seu computador.
2. Abra Painel de controles/Gerenciador de Dispositivos

Se você não instalou o Drive, o sinal de dependência marcada por um simbolo de "!" exclamação irá aparecer. Clique com o Direito e deixe pesquisar automaticamente na internet o drive de conexão USB. No meu caso é o EZCam III, é uma merda, mas tudo bem.

3. Abra o netbeans
4. Crie um novo projeto e nomei. O meu é WebCamU
5. Gosto de programar em Camadas. Vamos criar 2 pacotes: webcamu.interfaces e webcamu.view

6. Pacote webcamu.interfaces
Vamos criar as interfaces necessárias para a aplicação. A primeira delas chamo de MapHWND. Esta contém o mapeamento necessário do HENDLE para a janela. Pesquise sobre isto, nada mais é que o identificador da janela no ambiente windows:

A partir daqui, salve o JNA dentro do projeto e importe para o projeto. No pacote Bibliotecas clique com o direito em AdicionarJar/Pasta... e busque a JNA.jar




A segunda interface chamo de Avicap32. Nela esta o mapeamento, não esta completo, do que há dentro da DLL:




A outra interface é a USER32 que mapeia a dll user32.dll que irei usar para setar as configurações, porque estou usando as constantes da interface e não os métodos:



As três interfaces estão prontas.

No pacote webcamu.views, adicione um Formulário JFrame, iremos trabalhar com GUI. Adicione um botão e um rótulo da paleta Controles Swing.

Dê dois clique no botão ou se preferir, na paleta propriedade do Botão, clique em eventos e acione ActionPerformed.
Adicione este código:




Note o seguinte, a constante WM_CAP_DLG_VIDEOSOURCE, trata do dispositivo USB. Automaticamente, se não identificado a precença nativa da Webcam (como o caso do notebook), será aberto uma janela para especificar o drive existente. Caso prefira podera cliar uma rotina identificando tais configurações como deixei comentado o formato do video e a compressão. Interessante isso.


Acerte as dependências que faltarem e VOILÁ.



1. Dê o RUN da aplicação.
2. Clique no botão
4. No meu caso é a USB, especifiquei o drive que instalei no Gerenciador de Dispositivos e funcionou.


Não utilizei JMF nem DirectShow para isso, foi mapeamento da API Nativa do windows avicap.dll para abrir imagem. Como você pode perceber, com ela tratamos de audio e video.

Além disso, existe a User32 e muitas outras, que com a documentações, você poderá fazer coisas impressionantes com o sistema operativo, neste caso Windows.
Sobre algumas informações adicionais sobre algumas dll poderá encontrar neste site: http://www.andreavb.com digite a API que vc quer, não há muitas (http://www.andreavb.com/API_USER32.html), porém ajudou-me muito. A linguagem existente de mapeamento estão em VB, super facil de entender.

Problema Solucionado!

É isso. Estou agora na Opencv.






Referência

MICROSOFT (Org.). Acessar imagem da WebCam. Disponível em: <http://social.msdn.microsoft.com/Forums/pt-BR/vscsharppt/thread/4df4fc93-a2d5-401b-ab4a- 056e00f47ec7>. Acesso em: 10 jan. 2010.

WIKIPEDIA (Org.). API. Disponível em: <http://pt.wikipedia.org/wiki/API>. Acesso em: 29 jan. 2012.

WIKIPEDIA (Org.). JNA. Disponível em: <http://en.wikipedia.org/wiki/Java_Native_Access>. Acesso em: 29 jan. 2012.

This message was edited 1 time. Last update was at 29/01/2012 18:12:41

ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

Uma vez usei a AviCap para capturar vídeo numa aplicação para engenharia. A idéia era fotografar buracos e automaticamente obter suas coordenadas GPS.
Hoje em dia isso poderia ser facilmente feito com um celular, mas na época, tivemos que usar uma placa de GPS dedicada e um notebook com uma webcam.
Uma das grandes vantagens dessa API é que é muito fácil.

Outra opção que eu gosto é a do DirectShow, e já até existe binding para ela com Java:
http://www.humatic.de/htools/dsj.htm

O DirectShow também é nativo do Windows, e é usado pela AviCap.
Ele era parte do DirectX, que é a principal tecnologia multimídia da MS, mas devido a sua importância, agora é parte da Windows API.

Na verdade, a idéia do AviCap era tornar a captura da webcam mais fácil do que com DirectShow.
Se você não curte coisa fácil, está indo para o lado errado, hehehhehehe.

Se quiser algo realmente difícil, estude um hardware específico e escreva um driver para uma webcam genérica.


Bom saber de mais gente usando a OpenCV. Estou usando ela com meu mestrado.
Para a captura, uso os drivers da PrimeSense e a OpenNI, assim capturo as imagens e a profundidade diretamente do Kinect.

Já tenho um conjunto de métodos para integrar com a OpenCV, se alguém tiver interesse, é só entrar em contato.



E, PS: Eu concordo com o Julio. É uma completa perda de tempo escrever aplicações assim para Java. Vão ficar difíceis de manter e você provavelmente fará tudo com mais tranquilidade usando diretamente o C++. Se você gosta de coisas difíceis, o que ainda está fazendo com o Java? Pegue uma linguagem não gerenciada, e você terá que lidar com ponteiros, em compensação, fará programas com performance sem precendentes.

This message was edited 3 times. Last update was at 29/01/2012 18:36:46


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
ViniGodoy
Moderador
[Avatar]

Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline

AmandaBuarqueLima wrote:O que mais me irrita é quando você pergunta alguma coisa, e pessoa vem com blábláblá... e não te dá nenhuma resposta convivente. O fórum acaba sendo um bate papo. E pior que nao acrescenta nada, e problema continua até que você mesmo insiste e por fim consegue alguma coisa que se caso fosse depender disto, esta ferrado(a)! rsrs


AmandaBuarqueLima wrote:Bom, parece que eu fui a unica que resolveu o problema então!


Não precisa reclamar do fórum. Lembre-se que:
a) Esse era um problema extremamente específico, que era só seu. É natural que ninguém queira baixar todo seu código, entender todo seu ambiente, e começar a trabalhar no seu projeto.
b) As pessoas te ajudam no fórum porque querem, de boa vontade. Não porque elas precisem.
c) O julio te orientou que usar multimídia em Java é o caminho errado, e ele tem direito a opinião dele;
d) Ninguém deveria depender de uma resposta de fórum;
e) Para alguém cobrando uma ajuda com tanta vêemencia, você tem poucas postagens ajudando outros usuários.

Não tem necessidade de ser rude. O post no final acabou ótimo, sua solução ficou interessante. Pena que só funcione em Windows, o que vai totalmente contra o propósito de usar Java, na opinião da comunidade em geral (eu mesmo não tenho nada contra, vivo sonhando com um binding Direct X em Java).

This message was edited 2 times. Last update was at 29/01/2012 18:44:23


@ViniGodoy - Lattes

Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!

Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).

Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295
[WWW]
 
Índice dos Fóruns » Java Avançado
Ir para:   
Powered by JForum 2.1.8 © JForum Team