elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


  Mostrar Mensajes
Páginas: [1]
1  Programación / Java / Re: no visualiso JMenuBar....que puede ser? en: 19 Mayo 2008, 05:37 am
Código:
setJMenuBar(tu_menu_bar);

2  Programación / Java / Re: Singleton, static y herencia en: 30 Abril 2008, 05:58 am
Los de la clase base
3  Programación / Java / Re: asignar color con setBackground(); a un JFrame en: 3 Abril 2008, 20:21 pm
Hola, yo siempre uso el panel de contenido asi:

Código:
public class Window extends javax.swing.JFrame {


public Window() {
super("Prueba de JFrame");

setPreferredSize(new java.awt.Dimension(640,480));
setDefaultCloseOperation(DISPOSE_ON_CLOSE);

getContentPane().setBackground(new java.awt.Color(255,0,0));

pack();
}

public static void main(String[] args) {
new Window().setVisible(true);


}

}

4  Programación / Java / Re: no se ven los menus en el JPanel en: 2 Abril 2008, 06:57 am
ya te dije cual es el problema, estas usando componentes pesados (AWT) dichos componentes si pintan siempre sobre swing es por eso que tapan a tus menus, para la clase Carta podrias extender de un JPanel y reescribir el metodo paint sin olvida llamar a super.paint y veras como se soluciona.

NOTA: NO ESTOY SEGURO pero creo haber visto en la clase Component un setter para obligar a pintar primero swing...

5  Programación / Java / Re: no se ven los menus en el JPanel en: 1 Abril 2008, 02:00 am
de que tipo es "carta" ?
recuerda que los componentes pesados se pintan sobre swing
6  Programación / Java / Re: Mezcla de lenguajes en: 19 Marzo 2008, 00:36 am
Hola! como bien te dicen puedes hacer uso de la JNI, yo apenas ayer la use, necesitaba usar el nombre corto ( formato 8.3 ) de los archivos en windows, pues desde mi programa java ejecutaba otro que recibe parametros desde la consola.

aqui te dejo un ejemplo, espero te sirva.

////////////////////// ARCHIVO Main.h ///////////////////////////////

Código:
/* DO NOT EDIT THIS FILE - it is machine generated */
#include <jni.h>
/* Header for class Main */

#ifndef _Included_Main
#define _Included_Main
#ifdef __cplusplus
extern "C" {
#endif
/*
 * Class:     Main
 * Method:    getShortPathName
 * Signature: (Ljava/lang/String;)Ljava/lang/String;
 */
JNIEXPORT jstring JNICALL Java_Main_getShortPathName
  (JNIEnv *, jobject, jstring);

#ifdef __cplusplus
}
#endif
#endif


//////////////////////// ARCHIVO Main.c /////////////////////////////////
Código:
#include <jni.h>
#include <stdio.h>
#include <windows.h>
#include "Main.h"

JNIEXPORT jstring JNICALL Java_Main_getShortPathName
  (JNIEnv *env, jobject o, jstring thePath) {
         
 long lResult = 0;
 WCHAR buff[255];
 const jchar *utfPath = (*env)->GetStringChars(env,thePath,NULL);
 
 lResult = GetShortPathNameW(utfPath,buff,255);
 
 (*env)->ReleaseStringChars(env,thePath,utfPath);         
  return (*env)->NewString(env,buff,lResult);
}

//////////////////////// Main.java ////////////////////////////////

Código:
public class Main {
   
    private native String getShortPathName(String thePath);
   
    public static void main(String[] args) {
        Main app = new Main();
        System.out.println(app.getShortPathName("C:\\Documents and Settings");
    }
   
    static {
        System.loadLibrary("api");
    }

}

para compilar la dll use mingw asi:
Código:
gcc -c -I"aqui el path de tu java\include" -I"aqui el path de tu java\include\win32" -o api.o Main.c

y despues....
Código:
gcc -shared -o api.dll api.o api.def

el archivo def tiene la funcion que vas a exportar asi:
Código:
EXPORTS
Java_Main_getShortPathName
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines