| |
Fragen & Antworten rund um sev-KomponentenDatagrid 3 - Texteingabe | | | Autor: crosstravel | Datum: 06.01.20 18:46 |
| Hallo,
für ein neues Planungsprogramm analog Outlook Kalender möchte ich das grid einsetzen. ich habe gesehen, dass die Höhe der Rows mit RowHeigt gesetzt werden kann. Das ist schon sehr gut. Ist es vielleicht auch möglich, die Höhe variabel, abhängig von den in die Cells zu übertragenden Daten, zu gestalten?
Da die Breite einer column beschränkt ist, manchmal aber langer text in die Zelle üvertragen wird, müsste dieser Text umgebrochen werden. Ich habe dazu leider in der Hilfe keinen Hinweis gefunden. Wie kann sonst ein solcher Umbruch bewerkstelligt werden (vbCrLf?)?
Danke für ein Feedback
Rainer | |
Re: Datagrid 3 - Texteingabe | | | Autor: crosstravel | Datum: 06.01.20 19:46 |
| Hallo,
ich habe meinen Beitrag wohl zu früh gepostet. Bezüglich der Zeilenumbrüche innerhalb einer Zelle habe ich inzwischen WordWrap und Multiline gefunden. Das passt. Bleibt wohl nur noch die Frage nach einer variablen Höhe der Row.
Danke
Rainer | |
Re: Datagrid 3 - Texteingabe | | | Autor: crosstravel | Datum: 07.01.20 06:28 |
| Guten Morgen Dieter,
vielen Dank für die schnelle Antwort. ich hatte schon vermutet, dass eine flexible Zeilenhöhe nicht geht. Vielleicht darf ich hier noch eine weitere Frage anbringen.
Der Kunde möchte seine Omnibus im Outlookstil (dafür die Row-Höhe) disponieren. Die bereits fertiggestellte Disposition im Gant-Chart-Stil will er nicht.
Pro Bus (er hat momentan 20) will er eine Row haben; und pro Tag eine Column. Jetzt kann ein Bus an einem Tag mehrere Aufträge fahren. Kann ich die einzelnen Aufträge in einer Zelle überhaupt darstellen? Er möchte dann auf einen Auftrag klicken können, und dann sollen ihm die Details angezeigt werden. Klingt einfach, aber ist das mit dem Grid machbar? Es wäre jedenfalls eine tolle Sache.
Vielen Dank und herzliche Grüsse aus der Schweiz
Rainer | |
Re: Datagrid 3 - Texteingabe | | | Autor: crosstravel | Datum: 09.01.20 06:57 |
| Hallo Dieter,
ich habe eine banale Frage zur Anzeige des DataGrids. Ich erstelle ein Testprogramm füe die Dsiposition von Omnibussen und stütze mich dabei auf Dein Beispiel List-Mode zu Datagrid 3. Ich rufe InitGrid auf und erwarte dann die Anzeige des Grids mit den generierten Columns. Testhalber sind das fix 6. Das Grid ist aber weiterhin leer. Was mache ich hier falsch, kannst Du mir auf die Sprünge helfen?
Danke
Rainer
Private Sub InitGrid()
With sevGrid1
.RowHeight = 50
.LockUpdate True
.DataMode = Mode_List
.Clear True
.ColumnHeaderHeight = 30
.CellSpacingH = 1
.CellSpacingV = 2
.GridLines = GRID_BOTH
.GridLinesShowAlways = True
.AllowColumnClick = False
.ScrollBars = SB_AUTO
.AutoNumberFixedCol = True
' ---------------------------------------------------------------------
' -------
' Feststehende Spalten definieren
' ---------------------------------------------------------------------
' -------
.FixedColCount = 4
.FixedCol = True
With .FixedColumns(2)
.Caption = "Bus"
.Align = ALIGNMENT_LEFT
.HeadAlign = ALIGNMENT_LEFT
.Width = 1300
.RowBackColor = sevGrid1.BackColor
End With
With .FixedColumns(3)
.Caption = "Bezeichnung"
.Align = ALIGNMENT_LEFT
.HeadAlign = ALIGNMENT_LEFT
.Width = 2000
.RowBackColor = sevGrid1.BackColor
End With
With .FixedColumns(4)
.Caption = "Sitze"
.Align = ALIGNMENT_CENTER
.HeadAlign = ALIGNMENT_CENTER
.Width = 750
.RowBackColor = sevGrid1.BackColor
End With
' ---------------------------------------------------------------------
' -------
' columns und Titel generieren (für Test 6 Spalten)
' ---------------------------------------------------------------------
' -------
m_Days = 6
ColWidth = 3000
For i = 1 To m_Days
vDate = DateAdd("d", i - 1, m_DateFrom)
With .ColumnAdd(Format$(vDate, "yymmdd"), Format$(vDate, "Ddd") & _
vbCrLf & Format$(vDate, "dd.mm"), ColWidth, , , , ALIGNMENT_CENTER)
bHeute = (Format$(vDate, "yyyymmdd") = Format$(Now, "yyyymmdd"))
If bHeute Then
.Caption = "Heute" & vbCrLf & Format$(vDate, "dd.mm")
End If
.Bold = bHeute
If Weekday(vDate) = vbSunday Then .ForeColor = vbRed
End With
Next i
.AutoSort = True
.AllowMultiSelect = True
.AllowEdit = True
.AllowDelete = True
.AllowColumnReorder = True
.LockUpdate False
.Refresh
End With
End Sub | |
Re: Datagrid 3 - Texteingabe | | | Autor: crosstravel | Datum: 09.01.20 08:45 |
| Hi Dieter,
das war mein Fehler, ich bitte um Entschuldigung. Hatte ein Durcheinander mit dem Namen des Grids. Ich sprach sevGrid1 an - der Name war aber sevGrid2 - war wohl zu früh am Morgen.
Nochmals entschuldigung und einen schönen Tag
Rainer | |
Re: Datagrid 3 - Texteingabe | | | Autor: Wobi | Datum: 10.01.20 01:00 |
| Hallo Rainer,
das ist ein typischer Fehler den man nicht machen sollte.
Steuerelemente, Variablen Formulare usw. sollten "sprechende" Namen erhalten.
Was ..1 und ..2 sind beim Grid weißt du während der Programmierung, wenn es aber mal am Morgen nicht so schnell klappt, dann ist das ein Anzeichen dafür, dass wenn du z.B. ein halbes Jahr später ein Update machen möchtest du dich zum Affen im Code suchst was das jeweils bedeutet.
Ganz zu schweigen davon wenn mehrere Leute an einer Anwendung arbeiten.
Also sei nicht "tippfaul" und benenne alles was du hast mit aussagekräftigen Namen, besser ist das...
Ich habe in der Vergangenheit viele Aufträge abgelehnt wo ich vorhandenen Code verwenden sollte. Wenn da so Sachen wie: If Label47.Caption < Text12.Text Then.... usw. drin standen habe ich das kategorisch abgelehnt, denn da Blickt kein Mensch in vernünftiger Zeit durch, da ist die Anwendung schneller neu gemacht....
Gruß
Frank | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats sevWizard für VB5/6
Professionelle Assistenten im Handumdrehen
Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) Weitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|