WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

uitable - Tabellengröße einstellen, Spaltenbreite

 

Dionysos
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 64
Anmeldedatum: 16.09.09
Wohnort: ---
Version: R2011a
     Beitrag Verfasst am: 21.09.2010, 17:47     Titel: uitable - Tabellengröße einstellen, Spaltenbreite
  Antworten mit Zitat      
Hallo Zusammen,

ich versuche seit X-Stunden eine Tabelle mit GUIDE in ein GUI einzufügen. Klappt auch alles wunderbar. Aber wie kann man die Tabelle so einstellen, dass sie von Anfang an die richtigen Größe hat?
Ich habe 4 Spalten und 3 Reihen. Standartmäßig steht jedoch der Inspector auf 4x4 was man jedoch mit delete nicht verändern kann.
Sobald man also die Oberfläche startet und danach einen Button betätigt, verändert sich optisch die Tabelle, was ich störend finde.
Zusätzlich noch eine Frage, ob man die erste Spalte mit den Namen auch die Breite ändern kann, da man mit 'ColumnWidth' ja nur auf die 2. Spalte (tatsächliche Werte) zugreifen kann.

Ich hoffe ihr könnt mir weiterhelfen.
Schönen Abend noch
_________________

Dionysos
Private Nachricht senden Benutzer-Profile anzeigen


Sco
Forum-Meister

Forum-Meister


Beiträge: 699
Anmeldedatum: 15.08.10
Wohnort: Dundee
Version: 2008a, 2010a
     Beitrag Verfasst am: 22.09.2010, 00:43     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:

Ich hoffe ihr könnt mir weiterhelfen.

...natürlich können wir das Smile.

Um eine Anfangsformatierung der Tabelle zu bekommen setze folgende Zeile in die Creation function ein:

Code:

set(handles.uitableXY,'Data',cell(3,4)); % ergibt 3 Zeilen, 4 Spalten; willst du vordefinierte Werte in den Tabellenzellen, so musst du diese Namen in die Cell eintragen!
 


Zu dem 2.: Weiss ich jetzt auch nicht wie man die Breite (elegant) einstellen kann (sehe auch den Sinn nicht ganz), aber du kannst ja einfach vor bzw. nach dem Namen Leezeichen oder Tabs anfügen. Das ist zwar recht einfach, aber funktioniert...

MFG

Sco
Private Nachricht senden Benutzer-Profile anzeigen
 
Dionysos
Themenstarter

Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 64
Anmeldedatum: 16.09.09
Wohnort: ---
Version: R2011a
     Beitrag Verfasst am: 22.09.2010, 07:28     Titel:
  Antworten mit Zitat      
Vielen Dank! Wieso steht sowas nicht bei der Hilfe dabei.... man man man, oder ich habs überlesen.
Wegen der Spaltenbreite ging es wenn dann darum sie schmaler zu machen, nicht breiter. So schlimm ist es auch nicht, wäre halt schön gewesen wenn alle Spalten die gleiche Breite hätten, inkl. der "Namensspalte", nicht aber andersherum.
Soweit wär ich dann durch, falls diese Woche noch Fragen dazu kommen sollten, melde ich mich.

Schöne Grüße
_________________

Dionysos
Private Nachricht senden Benutzer-Profile anzeigen
 
dEliRio
Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 14.07.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.11.2010, 10:45     Titel:
  Antworten mit Zitat      
Hallo zusammen,

wenn ich die uitable mit einem MischMasch aus String und Zahlenwerten
befülle

matlab die Datentypen selbst wählen lasse.

Gibt es eine Möglichkeit den align
(die Ausrichtung left-center-right) zu bestimmen?


Toll wenn jmd. eine Lösung hätte
vielen Dank
beste Grüße



edit:
Gerade bemerkt:
Zmd. wenn man Datentyp 'char' für die Zellen erzwingt
hat man schon jeweils eine linksbündige Ausrichtung
Private Nachricht senden Benutzer-Profile anzeigen
 
Marco H.
Forum-Guru

Forum-Guru


Beiträge: 404
Anmeldedatum: 12.11.10
Wohnort: Dortmund
Version: 2010a/2012b
     Beitrag Verfasst am: 12.11.2010, 11:59     Titel:
  Antworten mit Zitat      
hi,

also den HorizontalAlignment kannst du nicht ohne weiteres einstellen. Standardmäßig ist dieser bei text links, zahl rechts und als checkbox mittig.

wenn du das aber auf jeden fall haben möchtest, dann musst du dich mit java auseinander setzen. entweder erstellst du deine eigene jtable oder du benutzt das findjobj vom matlab file exchange. wie man dann den HorizontalAlignment ändern kann steht in java tutorials (z.B. http://download.oracle.com/javase/t.....g/components/table.html).

als workarround lass doch einfach die rowheaders nummeriert oder blende sie aus und setzte in deine erste spalte des cells für die uitable deine namen ein. du kannst diese via html auch farblich ändern:

z.B.
Code:

Name = {'<html><font color=#006400>Ammoniak</font> <b>NH<sub>3</sub></b>'};
 


du bekommst auch immer gute tipps für guis bei http://undocumentedmatlab.com/.

anbei ein screenshot von einem beispiel...

mfg marco

Tabellenbeispiel.JPG
 Beschreibung:

Download
 Dateiname:  Tabellenbeispiel.JPG
 Dateigröße:  317.18 KB
 Heruntergeladen:  1686 mal
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.