powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / выделение строки в MSHFLEXGRID
12 сообщений из 12, страница 1 из 1
выделение строки в MSHFLEXGRID
    #36351508
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub STGrid_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
    Case  32 
        Select Case STGrid.CellBackColor
            Case &H80FFFF
                STGrid.CellBackColor = &H80000005
            Case &H80000005
                STGrid.CellBackColor = &H80FFFF
        End Select
STGrid.Row = STGrid.RowSel +  1 
End Select
End Sub
Подскажите пожалуйста как мне выделить целиком всю строку.
STGrid.Row = STGrid.RowSel + 1 выделяет только одну ячейку.
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36351630
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по всем ячейкам этой строки пробежаться в цикле и задать цвет?
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36351797
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
строка окрашиваетсявся проблем нет.
проблема в том что нужно перевести курсор вниз на одну строку.
STGrid.RowSel выделяет несколько строк. Как мне перевести курсор на другую строку что бы была выделена только одна строка.
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36351808
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
grid.Row = 25
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36351986
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Onegrid.Row = 25
ну я так с этого и начал
прикрепляю картинку, надо как на нижнем рисунке.
Интересно почему сбрасывается выделение всей строки.
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36351997
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
Me.MSHFlexGrid1.SelectionMode = flexSelectionByRow
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36352056
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.SelectionMode = flexSelectionByRow - стоит

после
grid.Row = 25

получается верхняя картинка, если кликнуть мышкой то выделяется вся строка.
как перевести курсор на строку чтобы строка была вся выделена
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36352078
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Начало и конец выделения определяются свойствами .Row, .Col, .RowSel, .ColSel - это координаты углов выделенного прямоугольника. Соответственно - задайте .Col и .ColSel
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36352133
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это что-ли надо?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
Option Explicit
Dim iRow As Integer

Private Sub Command1_Click()
With Me.MSHFlexGrid1

If iRow >= .Rows -  1  Then
    iRow =  0 
End If
iRow = iRow +  1 

.Row = iRow
.RowSel = iRow

.Col =  0 
.ColSel = .Cols -  1 

End With
End Sub

Private Sub Form_Load()
Dim i As Integer

iRow =  1 

With Me.MSHFlexGrid1
.SelectionMode = flexSelectionByRow
.AllowUserResizing = flexResizeColumns
.FillStyle = flexFillRepeat
.FocusRect = flexFocusNone
.BandExpandable( 0 ) = False
.Rows =  21 
.Cols =  10 

.FixedCols =  1 
.FixedRows =  1 

.ColWidth( 0 ) = "300"


.TextMatrix( 0 ,  0 ) = "#"
.TextMatrix( 0 ,  1 ) = "name"

For i =  1  To  20 

.TextMatrix(i,  0 ) = i
.TextMatrix(i,  1 ) = "text " & i
If i Mod  2  Then
.Row = i
.RowSel = i
.Col =  1 
.ColSel = .Cols -  1 
.CellForeColor = vbBlue
.CellBackColor = vbYellow
End If

Next i
.Row = iRow
.HighLight = flexHighlightAlways
End With

Command1_Click

End Sub

Private Sub Form_Resize()
On Error Resume Next
Me.Frame1.Move  0 ,  0 , Me.Width
Me.MSHFlexGrid1.Move  0 , Me.Frame1.Height, Me.Width, Me.Height - Me.Frame1.Height
End Sub
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36352844
timtim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Oneэто что-ли надо?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Option Explicit
Dim iRow As Integer

Private Sub Command1_Click()
With Me.MSHFlexGrid1

If iRow >= .Rows -  1  Then
    iRow =  0 
End If
iRow = iRow +  1 

.Row = iRow
.RowSel = iRow

.Col =  0 
.ColSel = .Cols -  1 

End With
End Sub

да именно это, т.е. выделение всей следующей нижней строки. Спасибо.
Т.е. свойство SelectionMode(1-By Row) в Property Pages контрола MSHFlexGrid является фикцией.
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36353785
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почему фикцией?
вы же построчно выделяете, а не поколоночно
...
Рейтинг: 0 / 0
выделение строки в MSHFLEXGRID
    #36956117
valdemar_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Имеется ли возможность запретиь выделение более 1 строки ?
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / выделение строки в MSHFLEXGRID
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]