/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
tooltip-hjælp!!
Fra : Ostekongen


Dato : 02-10-02 09:28

Hej ng.
Spurgte om dette for nogle dage siden.
Har siddet og rodet lidt med at få tooltips i de
enkelte celler i en JTable.......men jeg kan ikke!!!
Det er lykkes mig at få tooltip på headeren, men i mit
tilfælde skal jeg ikke bruge en header.
Er her ikke en der kan hjælpe??
Et eksempel ville gøre mig lykkelig


__________________________________________________________________
Ostekongen ICQ#: 144551849 Current ICQ status: + More ways to contact me i
See more about me:
__________________________________________________________________



 
 
Thomas Saxtoft (02-10-2002)
Kommentar
Fra : Thomas Saxtoft


Dato : 02-10-02 12:28

Ostekongen wrote:

>Har siddet og rodet lidt med at få tooltips i de
>enkelte celler i en JTable.......men jeg kan ikke!!!
Har du kigget ind i TableCellRenderer?
Jeg har ikke selv rodet med tooltip, men har benyttet
TableCellRenderer. Jeg tror det er her du skal sætte dit tooltip.

Thomas

Ostekongen (02-10-2002)
Kommentar
Fra : Ostekongen


Dato : 02-10-02 12:39

> Har du kigget ind i TableCellRenderer?
> Jeg har ikke selv rodet med tooltip, men har benyttet
> TableCellRenderer. Jeg tror det er her du skal sætte dit tooltip.
>
Ja, det lyder meget sandsynligt.
Har kigget lidt på det, men kan sgu ik helt hitte
ud af det......
Er ikke den vildeste haj til Java.
Kan du forklare hvordan man gør?
Eller måske et lille eksempel... ??

-Ostekongen



Thomas Saxtoft (02-10-2002)
Kommentar
Fra : Thomas Saxtoft


Dato : 02-10-02 14:46

Hej Trygler

>Kan du forklare hvordan man gør?
>Eller måske et lille eksempel... ??
Jeg prøver, men det bliver her i Agents "Editor", dvs. uden garanti
for at det ikke indeholder fejl.

Nedstående er bare en af måderne man kan gøre det på. Der er sikkert
en nemmere måde at gøre det på, men det er hvad jeg har gjort
tidligere da jeg har lavet en ret specialiseret tabel.
Hvor nemt du kan gøre det afhænger meget af hvor avanceret din tabel
skal være.
Nedenstående måde åbner dog op for mange andre muligheder som man ikke
får ved at benytte DefaultTableCellRenderer.

Som nævnt tidligere kan http://manning.com/sbe/ varmt anbefales når
man skal lege med Swing. Specielt kapitel 18 i dit tilfælde.

Held og lykke

Thomas


import javax.swing.*;
import javax.swing.table.TableCellRenderer;
import java.awt.*;

public class MyOwnTextFieldRenderer extends JCheckBox
implements TableCellRenderer {

public MyOwnTextFieldRenderer() {
super();
}

public Component getTableCellRendererComponent(JTable table,
Object value,
boolean isSelected,
boolean hasFocus,
int row,
int column) {
setToolTipText("Tekst");
return this;
}
}

public class ControlTable {
public ControlTable() {
JTable table = new JTable(new MyOwnTableModel());
TableColumnModel columnModel = table.getColumnModel();
TableColumn column = null;
for (int i = 0; i < columnModel.getColumnCount(); i++) {
column = columnModel.getColumn(i);

MyOwnTextFieldRenderer renderer = null;
if (i == 0) {
renderer = new MyOwnTextFieldRenderer();
column.setCellRenderer(renderer);
}
}
}
}

Thomas Saxtoft (02-10-2002)
Kommentar
Fra : Thomas Saxtoft


Dato : 02-10-02 14:54

>Hej Trygler
Undskyld Ostekonge. Det var min fejl.

Thomas


Lars Dam (02-10-2002)
Kommentar
Fra : Lars Dam


Dato : 02-10-02 15:49

On Wed, 2 Oct 2002 10:28:01 +0200, "Ostekongen"
<ostekongen@hotmail.com> wrote:

>Hej ng.
>Spurgte om dette for nogle dage siden.
>Har siddet og rodet lidt med at få tooltips i de
>enkelte celler i en JTable.......men jeg kan ikke!!!
>Det er lykkes mig at få tooltip på headeren, men i mit
>tilfælde skal jeg ikke bruge en header.
>Er her ikke en der kan hjælpe??

Jeg tror jeg sendte dig afsted på en omvej. Kiggede lige lidt selv på
det, og det er egentligt ikke så slemt:

>Et eksempel ville gøre mig lykkelig

import javax.swing.*;
import javax.swing.table.*;
import java.awt.event.*;

public class TableToolTipTest extends JFrame {
JTable table = new JTable() {
public String getToolTipText(MouseEvent event) {
int col = columnAtPoint(event.getPoint());
int row = rowAtPoint(event.getPoint());
return col < 0 || row < 0? null : "Tooltip for: " +
defaultTableModel.getValueAt(row, col);
}
};
DefaultTableModel defaultTableModel = null;

public TableToolTipTest() {
setLocation(50, 50);
setSize(280, 160);
setTitle("TableToolTipTest");

defaultTableModel = new DefaultTableModel() {
String column[] = {"A", "B", "C"};
String data[][] = {{"A1", "B1", "C1"},
{"A2", "B2", "C2"}};

public String getColumnName(int i) {
return column == null ? null : column[i];
}

public int getRowCount() {
return data == null ? 0 : data.length;
}

public int getColumnCount() {
return data == null ? 0 : data[0].length;
}

public Object getValueAt(int row, int column) {
return data == null ? null : data[row][column];
}
};

table.setModel(defaultTableModel);
getContentPane().add(table);
}

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

vh. ld

Ostekongen (03-10-2002)
Kommentar
Fra : Ostekongen


Dato : 03-10-02 13:47

> Jeg tror jeg sendte dig afsted på en omvej. Kiggede lige lidt selv på
> det, og det er egentligt ikke så slemt:
>
Tak for eksemplet.....

-Ostekongen



Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste