Avatar billede aslan Nybegynder
24. april 2002 - 16:24 Der er 10 kommentarer og
1 løsning

lave links på frames

Er det muligt at lave links på frames så man kan skifte mellem flere frames?
Avatar billede disky Nybegynder
24. april 2002 - 17:10 #1
du er vist landet det forkerte sted

JAVA har INTET med javascript at gøre!
Avatar billede aslan Nybegynder
24. april 2002 - 17:13 #2
slap af batmand... det ved jeg udmærket godt, jeg snakker om GUI.. det er til en opgave vi skal lave på skolen hvor vi skal lave en grænseflade til vores system!!
Avatar billede lyhr007 Nybegynder
24. april 2002 - 17:30 #3
Hvad er det du gerne vil?

Java fungere meget anderledes end html.

Hvis du skal lave en java GUI som en applet der er embedded i noget html og skal skifte hvad der vises i html frames. Så skriv at det er det du gerne vil.

Hvis du gerne vil lave en fuldblods java program der ikke har noget med html at gøre, vil jeg anbefale dig at hente en IDE (www.forte.com) og bruge den til at lave den med. I en GUI findes der ikke "links" som sådan og den fungere på en helt anden måde.

Så jeg tror du bliver nød til at uddybe hvad det er du gerne vil...
Avatar billede aslan Nybegynder
24. april 2002 - 17:35 #4
Det jeg gerne vil have skal intet have med html at gøre ... jeg ville bare gerne vide hvordan jeg skiftede rundt mellem mine frames via links..
Avatar billede lyhr007 Nybegynder
24. april 2002 - 17:37 #5
prøv at skrive noget af det du har lavet ?

Og der findes stadig ikke links i Java programmer...
Avatar billede aslan Nybegynder
24. april 2002 - 17:39 #6
import java.sql.*;
import java.awt.*;
import java.awt.event.*;

class FrontEnd extends Frame implements ActionListener
{
    TextField Skriv;
    TextArea Felt;
    Button    Afsend,Tøm;
    ConnectDB db;

    public FrontEnd()
    {
        db = new ConnectDB( "jdbc:interbase://localhost/C:/Documents and Settings/aslan/Skrivebord/ConnectDB/hotellazy.gdb", "sysdba", "masterkey" );

        setTitle( "Hotel Lazy" );
        setSize( 400, 350 );

        setLayout( new FlowLayout( FlowLayout.CENTER, 60, 10 ) );
        Felt = new TextArea(10,40);
        Felt.setEditable(false);
        add(Felt);

        Skriv = new TextField( 30 );
        add(Skriv);

        Afsend = new Button( "Indsæt" );
        Afsend.addActionListener(this);

        add( Afsend );

        Tøm = new Button( "Tøm" );
        Tøm.addActionListener(this);
        add( Tøm );

        addWindowListener( new WindowAdapter()
        {
            public void windowClosing( WindowEvent e )
            {
                System.exit(0);
            }
        });

        setVisible( true );
    }
    public void paint(Graphics g)
    {
        g.setColor(Color.blue);
        g.fillRect(0,0,400,300);
    }


    public void actionPerformed( ActionEvent e )
    {

        if( e.getSource() == Afsend )
        {
        smidInd();
        tagUd();
        }
        if(e.getSource() == Tøm)
        {
            TømDB();
        }
    }
    public void smidInd()
    {
        db.Insert( "INSERT INTO Navne VALUES( '"+Skriv.getText()+"' )" );
        Skriv.setText("");
    }
    public void tagUd()
    {
        Felt.setText("");
        try
        {
            ResultSet row = db.Select( "SELECT * FROM Navne" );

            while( row.next() )
            {
                Felt.append( row.getString(1)+"\n" );
            }
        }
        catch( SQLException cs )
        {
            System.out.println( cs );
        }
    }
    public void TømDB()
    {
        db.Insert("DELETE FROM Navne");
        Felt.setText("");

    }

    public static void main( String args[] )
    {
        new FrontEnd();
    }
}
Avatar billede lyhr007 Nybegynder
24. april 2002 - 17:47 #7
Jeg tror ikke du må have variable der har special carakters i sig:  Tøm ???

Det du har er events...

Hvad skal der nu ske når du trykker på en knap f.esk Afsend ?
Avatar billede aslan Nybegynder
24. april 2002 - 17:56 #8
Jamen teksten fra textfield bliver smidt ind i databasen og hele indholdet af databasen bliver vist frem på textarea... Det skal du ikke binde dig i jeg ville bare vide hvordan jeg fra denne frame kunne hoppe videre til en anden frame jeg har lavet f.eks hvis en bruger ønsker at skifte over til en anden frame?? Man kan jo ikke lave et system til en bruger hvis han ikke kan skifte rundt mellem "siderne"???
Avatar billede lyhr007 Nybegynder
24. april 2002 - 18:20 #9
Hvis det kan compile så kan man vel godt :) troede bare ikke man kunne...


Problemmet ligger i at du tænker i html baner, og det skal man ikke.

1. Der findes ingen link -> der findes events hvor du kan gøre hvad du vil (vise nye data i et tekstarea, sende data til en database, gøre ingen ting u name it).

2. Der findes ingen sider! -> Der er ikke noget der skal refreshes eller på anden måde loades fra servere. Hvis du ikke er tilfreds med det som der bliver vist lige nu ændre du det bare.


Tryk på en knap laver en ActionEvent.
Lav en klasse/metode der fanger den event og gør hvad du gerne vil
F.esk. opdatere Frame med nogen nye componenter eller ændre i dem der findes i forvejen.
Avatar billede aslan Nybegynder
24. april 2002 - 18:26 #10
Ok jeg tror jeg tænker for meget på php og html som du siger:)Jeg kan se ideen i det nu... Men hvordan er det muligt at lave om på componenter dvs føje til eller slette via events?
Avatar billede lyhr007 Nybegynder
24. april 2002 - 18:30 #11
Dette er godt nok en tutorial til SWING og du bruger AWT men læs alligevel om event handling der...

http://java.sun.com/docs/books/tutorial/uiswing/index.html


Som jeg skrev tidligere kan det varmt anbefaldes at hente en IDE (Et grafisk værtøj til at lave java kode med og der er en del drag&drop til GUI's).

http://wwws.sun.com/software/Developer-products/ffj/index.html

den er gratis i community udgaven.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester