Ik heb net voor mijn projectje een eenvoudige browser geschreven
die de help pagina's zal tonen.
De bedoeling is om tussen pagina's te kunnen bewegen via
een 3 tal JButtons die er aanwezig zijn in de de InternalFrame
waarin de pagina's worden afgebeeld.
Ik implementeer HyperlinkListener op de volgende manier:
(Het programma werkt goed met echte Hyperlinks op de html,
dus de listener functioneerd zoals het hoort denk ik)
Mijn vraag is nu: hoe genereer ik een HyperlinkEvent als ik op een JButton
klik? Mijn buttons zijn zo gedefinieerd:
Zoals je ziet heb ik reeds een poging ondernomen om een HyperlinkEvent
te maken. In de api docs stond dat ik een event source moest opnemen
(daarvoor heb ik html ingevuld, dat is mijn JEditorPane), dan de gewenste
actie en daarna nog een URL object... dit werkte echter niet, er verscheen geen
nieuwe pagina in de browser...
De bedoeling is dus dat zodra er op die knop geklikt wordt dat er naar h1.htm gesprongen wordt...
Oja, mijn excuses voor de rommelige code, het copy/pasten van mijn
java IDE naar dit forum is niet geheel naar wens verlopen
die de help pagina's zal tonen.
De bedoeling is om tussen pagina's te kunnen bewegen via
een 3 tal JButtons die er aanwezig zijn in de de InternalFrame
waarin de pagina's worden afgebeeld.
Ik implementeer HyperlinkListener op de volgende manier:
(Het programma werkt goed met echte Hyperlinks op de html,
dus de listener functioneerd zoals het hoort denk ik)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| public void hyperlinkUpdate( HyperlinkEvent event ) {
if( event.getEventType() == HyperlinkEvent.EventType.ACTIVATED ) {
htmlc = html.getCursor();
htmlw = Cursor.getPredefinedCursor( Cursor.WAIT_CURSOR );
html.setCursor( htmlw );
// pagina veranderen bij het klikken op een link
SwingUtilities.invokeLater( new PaginaLader( html,
event.getURL(), htmlc ) );
}
// einde hyperlinkUpdate
} |
Mijn vraag is nu: hoe genereer ik een HyperlinkEvent als ik op een JButton
klik? Mijn buttons zijn zo gedefinieerd:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
| JButton home = new JButton(new ImageIcon(dir + "/help/knopjes/home.gif"))
home.addActionListener(new AbstractAction() {
public void actionPerformed(ActionEvent ae) {
try {
//new HyperlinkEvent( html,HyperlinkEvent.EventType.ACTIVATED,
new URL ("file:///" + dir + "/help/h1.htm" ) );
} catch( MalformedURLException e) {
System.out.println("URL verkeerd gevormd! " + e);
} catch( IOException e) {
System.out.println("IOException: " + e);
}
}
}); |
Zoals je ziet heb ik reeds een poging ondernomen om een HyperlinkEvent
te maken. In de api docs stond dat ik een event source moest opnemen
(daarvoor heb ik html ingevuld, dat is mijn JEditorPane), dan de gewenste
actie en daarna nog een URL object... dit werkte echter niet, er verscheen geen
nieuwe pagina in de browser...
De bedoeling is dus dat zodra er op die knop geklikt wordt dat er naar h1.htm gesprongen wordt...
Oja, mijn excuses voor de rommelige code, het copy/pasten van mijn
java IDE naar dit forum is niet geheel naar wens verlopen
[ Voor 31% gewijzigd door Kapoen op 23-01-2003 13:17 ]
Clowns to the left of me, Jokers to the right