28. Februar 200521 j Hallo zusammen, ich habe folgendes Problem mit Java 1.5. Ich habe eine Maske in der ich ein GridLayout verwende. Dort habe ich verschiedene Widgets drinne. Bei allen Widgets handelt es sich um eclipse.swt elemente. Ich möchte eines dieser Elemente ( TEXT) ausblenden und ein anderes TEXT Element dafür einblenden. Wenn ich dazu die Methode setVisibility verwende, wird für das unsichtbar gemachte Element immernoch der Platz reserviert und das andere wird darunter eingeblendet. Wie kann ich das Element an der gleichen Stelle einblenden, an der das vorhandene Element steht? Danke und viele Grüße , Markus
28. Februar 200521 j Hallo zusammen, ich habs jetzt mit getBounds() und setBounds() hinbekommen. Gruß, Markus
28. Februar 200521 j Wie kann ich das Element an der gleichen Stelle einblenden, an der das vorhandene Element steht? Die Componente vom Container removen und die andere an der entsprechenden Stelle add'en. Gruß Jaraz
28. Februar 200521 j Servus, mit getBounds und setBounds solltest Du bei Verwendung eines LayoutManagers nicht arbeiten, weil die Angaben - zumindest bei SWT - beim nächsten Layout wieder weg sind. Und das wird ja schon beim resize des Fensters ausgeführt. Die richtige Methode ist - wie schon Jaraz sagte, das entfernen und wieder hinzufügen des Widgets. Bei SWT könntest Du noch ein passendes Objekt von GridData mitgeben, dann sollte es passen. Oder gleich FormLayout verwenden, das ist flexibler als GridLayout. Peter
28. Februar 200521 j Servus, mit getBounds und setBounds solltest Du bei Verwendung eines LayoutManagers nicht arbeiten, weil die Angaben - zumindest bei SWT - beim nächsten Layout wieder weg sind. Und das wird ja schon beim resize des Fensters ausgeführt. Die richtige Methode ist - wie schon Jaraz sagte, das entfernen und wieder hinzufügen des Widgets. Bei SWT könntest Du noch ein passendes Objekt von GridData mitgeben, dann sollte es passen. Oder gleich FormLayout verwenden, das ist flexibler als GridLayout. Peter Ich hab schonmal versucht mit dem entfernen und adden, aber ich hab dabei ein paar probleme: Ich entferne ein element welches mitten in einer Group drinne hängt. Wie kann ich nun genau an dieser Stelle das andere Objekt einfügen? Ich kann doch nur immer hinten anfügen.... Formlayouts wollte ich auch schon verwenden, aber die konnte ich bis jetzt dem Eclipse nicht beibringen.... Gruß, Markus
28. Februar 200521 j Servus, ich arbeite nicht mit GridLayout deshalb wusste ich gar nicht, das man damit nicht ersetzen kann. Hab grad in die API-Dok geschaut und man kann scheinbar wirklich nur anhängen. Blöd. Was klappt denn an FormLayout nicht? Wenn Du GridLayout nehmen kannst, dann sollte doch FormLayout auch gehen, liegen ja im gleichen Package. Beschreib mal genau, was nicht geht, bei FormLayout kann ich Dir helfen. Peter
28. Februar 200521 j Form Layouts sind beim eclipse einfach nicht dabei. mann kann diese im Visual Editor nicht auswählen usw.... Gruß, Markus
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.