Pokračování v programu – Java – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Pokračování v programu – Java – Fórum – Programujte.comPokračování v programu – Java – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Luke
~ Anonymní uživatel
32 příspěvků
26. 2. 2013   #1
-
0
-

Zdravím, především chci říct že jsem java začátečník a nemám skoro žádné zkušenosti, javu se snažím postupně učit a postupně chápat ale tlačí mě čas a musel jsem se pustit doprojektu... Většinu códu něják kopíruji a upravuji jelikož jsem se ve víuce ještě takhle daleko nedostal...

PROBLÉM:

Mám vytvořené okno ( na pozadí obrázek ) ve kterém mám contejner s textem, boxem na jméno a pod tím tlačítko hrát, potřeboval bych aby když to tlačítko zmáčknu tak mi ten kontejner zmizel a dál už bych to něják zvládl, jde mi jen o to aby ten kontejner zmizel a okno i pozadí tam zůstalo...

 toto je zdrojový kód zkopírovaný z internetu který používám v trochu upravené verzi :)

Vím že s mými znlaostmi bych se tu asi neměl ani ptat a rači se to naučit ale bohužel to potřebuji co nejdříve a proto se musím soustředit opravdu na to co potřebuji, byl bych rád kdyby jste mi trochu pomohli.

import java.awt.Color;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Graphics;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Image;
import java.awt.Insets;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.border.LineBorder;
/*
 * Created on Mar 24, 2008
 *
 */

/**
 * @author Anand
 */

public class JBackGroundImageDemo extends JFrame
{
    Container con = null;
    JPanel panelBgImg;
    
    public JBackGroundImageDemo()
    {
        setTitle("JBackGroundImageDemo");
        con = getContentPane();
        
        con.setLayout(null);
        ImageIcon imh = new ImageIcon("image.jpg");
        setSize(imh.getIconWidth(), imh.getIconHeight());
        
        panelBgImg = new JPanel()
        {
            public void paintComponent(Graphics g) 
            {
                Image img = new ImageIcon("image.jpg").getImage();
                Dimension size = new Dimension(img.getWidth(null), img.getHeight(null));
                setPreferredSize(size);
                setMinimumSize(size);
                setMaximumSize(size);
                setSize(size);
                setLayout(null);
                g.drawImage(img, 0, 0, null);
            } 
        };
        
        con.add(panelBgImg);
        panelBgImg.setBounds(0, 0, imh.getIconWidth(), imh.getIconHeight());
        
        GridBagLayout layout = new GridBagLayout();
        
        JPanel panelContent = new JPanel(layout);
        GridBagConstraints gc = new GridBagConstraints();

        gc.insets = new Insets(3, 3, 3, 3);
        gc.gridx = 1;
        gc.gridy = 1;
        
        JLabel label = new JLabel("UserName: ", JLabel.LEFT);                        
        panelContent.add(label, gc);
        
        gc.gridx = 2;
        gc.gridy = 1;
        
        JTextField txtName = new JTextField(10);
        panelContent.add(txtName, gc);
        
        gc.insets = new Insets(3, 3, 3, 3);
        gc.gridx = 1;
        gc.gridy = 2;
        gc.gridwidth = 2;

        JButton btn = new JButton("Login");
        panelContent.add(btn, gc);
        panelContent.setBackground(Color.GRAY);
        panelContent.setBorder(new LineBorder(Color.WHITE));
        
        panelBgImg.add(panelContent);
        
        panelBgImg.setLayout(new FlowLayout(FlowLayout.CENTER, 150, 200));
        
        setResizable(false);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
    
    public static void main(String[] args) 
    {
        new JBackGroundImageDemo().setVisible(true);
    }
}   
	
Nahlásit jako SPAM
IP: 88.103.104.–
Reklama
Reklama
zlz
~ Anonymní uživatel
634 příspěvků
26. 2. 2013   #2
-
0
-

Ten "dialog" by měl být skutečný dialog a ne panel. Jednoduše třeba přes JOptionPane.showInputDialog.

Jinak teda ten panel můžeš schovat přes setVisible, třeba nějak takhle:

final JPanel panelContent = new JPanel(layout);
...
JButton btn = new JButton("Login");
btn.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        ...
        panelContent.setVisible(false);
        ...
    }
});
Nahlásit jako SPAM
IP: 78.156.159.–
Luke
~ Anonymní uživatel
32 příspěvků
26. 2. 2013   #3
-
0
-

jojo díky :) tohle sem potřeboval vědět, jen ho schovám a vytvořím tam něco jiného :)

Nahlásit jako SPAM
IP: 88.103.104.–
Luke
~ Anonymní uživatel
32 příspěvků
11. 3. 2013   #4
-
0
-

Bohužel mi to pořád nefunguje, nevím kde mám chybu nebo jestli jsem to co jste mi zde poradil něják blbě zaspal...

Nahlásit jako SPAM
IP: 213.194.217.–
zlz
~ Anonymní uživatel
634 příspěvků
11. 3. 2013   #5
-
0
-

Mělo by to fungovat, asi jsi to blbě zaspal.

Nahlásit jako SPAM
IP: 78.156.159.–
Luke
~ Anonymní uživatel
32 příspěvků
11. 3. 2013   #6
-
0
-

Asi jo ale nevím kde mám v tom případě chybu :/ 

Nahlásit jako SPAM
IP: 213.194.217.–
zlz
~ Anonymní uživatel
634 příspěvků
11. 3. 2013   #7
-
0
-

Chlape, neser. Tobě někde něco nefunguje a my teď máme naslepo hádat kde, co a proč?

Nahlásit jako SPAM
IP: 78.156.159.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 22 hostů

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý