vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fragen & Antworten rund um sev-Komponenten
Datagrid 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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Datagrid 3 - Texteingabe 
Autor: ModeratorDieter (Moderator)
Datum: 06.01.20 20:12

Eine variable Zeilenhöhe lässt sich nicht einstellen.

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Datagrid 3 - Texteingabe 
Autor: ModeratorDieter (Moderator)
Datum: 07.01.20 08:55

Sorry, aber das ist nicht möglich.

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Datagrid 3 - Texteingabe 
Autor: ModeratorDieter (Moderator)
Datum: 09.01.20 07:58

Sorry, aber das kann ich nicht nachvollziehen.
Sofern du die in der InitGrid benötigten Variablen korrekt dimensioniert hast, sollte es funktionieren.

_________________________
Professionelle Entwicklerkomponenten
www.tools4vb.de

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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