|
| |

Fragen & Antworten rund um sev-Komponenten| SevDataGrid - Spalten per Drag&Drop verschieben - keine Aktualisierrung | |  | | Autor: Eric007 | | Datum: 16.02.06 17:27 |
| Hallo Ihr Spezialisten,
ich möchte in einem Grid eine Zelle aktualisieren aufgrund der Zellinhalte anderer Zellen. Das funktioniert beim Start auch.
Wenn ich allerdings die Spalten via Drag&Drop verschiebe, so nimmt er nicht die Inhalte der verschobenen Zellen, sondern den ursprünglichen Zellinhalt.
Kleines Beispiel:
Zelle1 soll beinhalten "0100" weil
Zelle2 leer ist
Zelle 3 mit "X" gefüllt ist
Zelle 4 leer ist
Zelle 5 leer ist
Wenn ich nun die Spalte 3 an das Ende verschiebe, so sollte mir die Zelle 1 "0001" anzeigen.
Erweitertes Beispiel anhand eines nachgestellten Projekts (einfach ein Grid in eine Form einfügen, den Code einfügen und eine Spalte verschieben):
Private Sub Form_Load()
With sevGrid1
.LockUpdate True
.Clear True
.AllowColumnReorder = True
.CaptionVisible = False
.DataMode = Mode_List
.AllowEdit = True
.NoHighlight = True
.FixedCol = True
.FixedColCount = 1
.FixedColumns(1).Caption = "Bezeichnung"
.FixedColumns(1).Width = 1200
.FixedColumns(1).Align = ALIGNMENT_LEFT
.ShowSortSymbols = False
.ColumnAdd "KCode", "KCode", 1500, ALIGNMENT_CENTER
.ColumnAdd "Spalte1", "Spalte1", , ALIGNMENT_CENTER
.ColumnAdd "Spalte2", "Spalte2", , ALIGNMENT_CENTER
.ColumnAdd "Spalte3", "Spalte3", , ALIGNMENT_CENTER
.ColumnAdd "Spalte4", "Spalte4", , ALIGNMENT_CENTER
.ColumnAdd "Spalte5", "Spalte5", , ALIGNMENT_CENTER
.AddItem "10000" & vbTab & "x", , "ID1"
.AddItem "01000" & vbTab & "" & vbTab & "x", , "ID2"
.AddItem "00100" & vbTab & "" & vbTab & "" & vbTab & "x", , "ID3"
.AddItem "00010" & vbTab & "" & vbTab & "" & vbTab & "" & vbTab & "x", , "ID4"
.AddItem "00001" & vbTab & "" & vbTab & "" & vbTab & "" & vbTab & "" & vbTab & "x", , "ID5"
.AllowColumnSizing = True
.LockUpdate False
.Refresh
End With
End Sub
Private Sub sevGrid1_AfterColumnDragDrop(ByVal nCol As Long, ByVal nNewPos As Long)
Dim varRow As Integer
Dim varCol As Integer
Dim varKCode As String
With sevGrid1
For varRow = 1 To .Rows
varKCode = ""
For varCol = 2 To .Cols
If Len(.ListItems(varRow).CellText(varCol)) > 0 Then
varKCode = varKCode & "1"
Else
varKCode = varKCode & "0"
End If
Next varCol
Debug.Print varKCode
.ListItems(varRow).CellText("KCode") = varKCode
Next varRow
End With
End Sub
Private Sub sevGrid1_ColumnStartDrag(ByVal nCol As Long, bCancel As Boolean)
If nCol = 1 Then bCancel = True
End Sub |  |
 | 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 |
  |
|
Neu! sevCommand 4.0 
Professionelle Schaltflächen im modernen Design!
Mit nur wenigen Mausklicks statten auch Sie Ihre Anwendungen ab sofort mit grafischen Schaltflächen im modernen Look & Feel aus (WinXP, Office, Vista oder auch Windows 8), inkl. große Symbolbibliothek. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
| |
|
Copyright ©2000-2025 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
|
|