Таблица

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Таблица

Сообщение xqz_me » 05.12.2005 (Пн) 14:10

Подскажите, подалуйста, какой-нибудь контрол таблицы. Чтобы массив неё записать.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 05.12.2005 (Пн) 14:25

FlexGrid
Lasciate ogni speranza, voi ch'entrate.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 05.12.2005 (Пн) 15:14

Спасибо. А как в неё писать то? Мне надо записть большой массив (состоящий, из байтов) в 16 столбиков, по одному байту в клетку, чтобы когда кончалась строка, состоящая из 16 байт, он писался на следующую строку и т.д.

vvs_adm
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1492
Зарегистрирован: 03.02.2005 (Чт) 3:45
Откуда: оттуда ;)

Сообщение vvs_adm » 05.12.2005 (Пн) 15:44

...
Вложения
PrTable.rar
(1.61 Кб) Скачиваний: 47
Никогда не откладывай на завтра то, что можно ... отложить на послезавтра!

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 05.12.2005 (Пн) 16:57

Спасибо. Мне определённо начинает нравиться этот форум. :)

vvs_adm
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1492
Зарегистрирован: 03.02.2005 (Чт) 3:45
Откуда: оттуда ;)

Сообщение vvs_adm » 05.12.2005 (Пн) 19:01

Ну... Мы тут еще и крестиком вышивать умеем :)
Никогда не откладывай на завтра то, что можно ... отложить на послезавтра!

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 05.12.2005 (Пн) 22:39

Ладно... А теперь такой вопрос. Я кликаю по ячейке в этой таблице. Как сделать так, чтобы какой-нибудь переменной прсвоилось значение, содержащееся в этой ячейке?

vvs_adm
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1492
Зарегистрирован: 03.02.2005 (Чт) 3:45
Откуда: оттуда ;)

Сообщение vvs_adm » 06.12.2005 (Вт) 0:29

Код: Выделить всё
Private Sub MSFlexGrid1_Click()
    MsgBox "Выбран " & CStr(MSFlexGrid1.Col) & " столбец и" & vbCrLf & CStr(MSFlexGrid1.Row) & " строка"
End Sub
Никогда не откладывай на завтра то, что можно ... отложить на послезавтра!

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 06.12.2005 (Вт) 8:53

Var = MSFlexGrid1.Text
Var = MSFlexGrid1.TextMatrix(col, row)
Lasciate ogni speranza, voi ch'entrate.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 06.12.2005 (Вт) 13:03

Отлично. Во всём разобрался. А есть аналог FlexGrid, только в стиле WinXP?

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 13.12.2005 (Вт) 0:08

И ещё вопрос... Есть две таблицы рядом. Как сделать так, чтобы
1) при прокрутке одной вверх-вниз одновременно прокручивалась и другая
2) При выделении ячейки в одной выделялась соответствующая ячейка в другой

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 13.12.2005 (Вт) 12:49

И последний вопрос... Как сделать так, чтобы можно было выделять только одну ячейку в таблице? AllowBigSelection = False не работает

GB826
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 312
Зарегистрирован: 04.08.2005 (Чт) 0:58
Откуда: Планета #3

Сообщение GB826 » 13.12.2005 (Вт) 14:05

Если MSFlexGrid аналог VSFlexGrid, то AllowBigSelection позволяет выделять все ячеки(строки или столбца) щелкнув по заголовку. А так просто AllowSelection=False

На остальные вопросы балуйся с FindRow и ShowCell


PS VSFlexGrid мне больше нравится :о)
Пора уже всем хорошим людям собраться и убить всех плохих людей.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 13.12.2005 (Вт) 18:17

FidnRow и ShowCell


Там нет таких свойств. А где взять VSFlexGrid?

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 13.12.2005 (Вт) 21:47

Это Методы
Изображение

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 13.12.2005 (Вт) 22:02

Можно конкретный пример?

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 14.12.2005 (Ср) 9:48

1) при прокрутке одной вверх-вниз одновременно прокручивалась и другая
2) При выделении ячейки в одной выделялась соответствующая ячейка в другой


Как сделать так, чтобы можно было выделять только одну ячейку в таблице? AllowBigSelection = False не работает


Хэлп ми :D

GB826
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 312
Зарегистрирован: 04.08.2005 (Чт) 0:58
Откуда: Планета #3

Сообщение GB826 » 14.12.2005 (Ср) 15:04

Действительно нет :о))
жалкая пародия на VS

Поищи в нете

Могу выслать в крайнем случае...
Пора уже всем хорошим людям собраться и убить всех плохих людей.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 14.12.2005 (Ср) 15:28

Я так понял, она не бесплатная :?
Мож мне архив со всем необходимым на inetsite@yandex.ru скинуть? И ещё... её ведь с прогой надо поставлять. Много она к весу проги прибавляет?

GB826
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 312
Зарегистрирован: 04.08.2005 (Чт) 0:58
Откуда: Планета #3

Сообщение GB826 » 15.12.2005 (Чт) 11:18

Отправил - 4 метра.

Надеюсь спама в ответ не будет...
Пора уже всем хорошим людям собраться и убить всех плохих людей.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 15.12.2005 (Чт) 14:46

Надеюсь спама в ответ не будет...

Обидно, когда тебя подозревают в таких вещах... :(
Спасибо... Буду разбираться

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 15.12.2005 (Чт) 20:52

Контрол очень понравился... А его с программой надо поставлять?

И ещё один вопрос.. Есть две таблицы рядом. У одной нет скролов, а у другой есть только вертикальный скрол. И что бы этим одим скролом пролистывались сразу 2 таблицы.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 15.12.2005 (Чт) 22:44

Вообщем, тут такие дела... На FidnRow вопит, что Argument not optional...

Зато работает такая штука: grid1.TopRow = grid2.TopRow. Как бы её при каждом шелчке на скролбар отлавливать... Подскажите...

GB826
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 312
Зарегистрирован: 04.08.2005 (Чт) 0:58
Откуда: Планета #3

Сообщение GB826 » 16.12.2005 (Пт) 10:24

Йолы-палы Argument not optional...
Ты забыл указать какой-то параметр

Вообще там хелп к VSGridу понятный, жмакни на нужную функцию и f1

Юзай FindRow и ShowCell

Вообще включи тыкву :о( до НГ еще далеко.

PS Если обидел то, xqz_me, если сможешь :о) Гы
Пора уже всем хорошим людям собраться и убить всех плохих людей.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 16.12.2005 (Пт) 23:33

Тык... Тыква тупит... На прокрутку двух таблиц одним скролом я уже забил.. Скажите хоть как выделить определённую ячейку и прокрутить таблицу до неё, если она находится за областью экрана... :(

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 19.12.2005 (Пн) 13:15

Хотелось бы получить ответ на вопрос

GB826
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 312
Зарегистрирован: 04.08.2005 (Чт) 0:58
Откуда: Планета #3

Сообщение GB826 » 19.12.2005 (Пн) 14:36

:shock:

FindRow и ShowCell

Йопта, ты надоел, это мой последний ответ в этой теме

И вообще Займись аквариумными рыбками, их и скроллить не надо...
Пора уже всем хорошим людям собраться и убить всех плохих людей.

xqz_me
Постоялец
Постоялец
 
Сообщения: 413
Зарегистрирован: 04.12.2005 (Вс) 14:58

Сообщение xqz_me » 19.12.2005 (Пн) 16:16

Йопта, ты надоел, это мой последний ответ в этой теме

Как будто ты один на всём свете такой умный, что способен давать ответы в этой теме. :?

И вообще Займись аквариумными рыбками, их и скроллить не надо...

Ты читать умеешь? Я ж написал, что не надо уже ничего скролить.

И вообще, давно бы уж можно было хотя бы синтаксис их описать, а не писать по три раза "FindRow и ShowCell". И вообще, сам ты надоел. Иди своё сено кушай.

Кто-нить поможет? :(

keks-n
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2509
Зарегистрирован: 19.09.2005 (Пн) 17:17
Откуда: г. Москва

Сообщение keks-n » 19.12.2005 (Пн) 17:25

Пишешь на форме:
VSFlexGrid.FindRow
И жмёшь Ctrl+I, и VB тебе инфу о параметрах выдаст.
Изображение

GB826
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 312
Зарегистрирован: 04.08.2005 (Чт) 0:58
Откуда: Планета #3

Сообщение GB826 » 19.12.2005 (Пн) 17:31

Для тех кто в танке и у кого f1 на клаве не существует

Код: Выделить всё
Returns the index of a row that contains a specified string or RowData value.
Syntax     
val& = [form!]VSFlexGrid.FindRow(Item As Variant, [ Row As Long ], [ Col As Long ], [ CaseSensitive As Boolean ], [ FullMatch As Boolean])
Remarks   
The FindRow method allows you to look up rows based on cell contents or RowData values. The search is much faster and easier to implement than a Visual Basic loop.

The parameters for the FindRow property are described below:

Item As Variant
This parameter contains the data being searched.

Row As Long (optional)
This parameter contains the rows where the search should start. The default value is FixedRows.

Col As Long (optional)
This parameter tells the control which column should be searched. By default, this value is set to -1, which means the control will look for matches against RowData. If Col is set to a value greater than -1, then the control will look for matches against the cell's contents for the given column.

CaseSensitive As Boolean (optional)
This parameter is True by default, which means the search is case-sensitive. Set it to False if you want a case-insensitive search (e.g. when looking for "FOO" you may find "foo" ). This parameter is only relevant when you are looking for a string.

FullMatch As Boolean (optional)
This parameter is True by default, which means the search is for a full match. Set it to False if you want to allow partial matches (e.g. when looking for "FOO" you may find "FOOBAR").  This parameter is only relevant when you are looking for a string.


FindRow returns the index of the row where the data was found, or -1 if the data was not found.


The code below shows how this method is used:

    ' assign some data to row 40 and cell (40, 5)
    fg.RowData(30) = "MyRow"
    fg.TextMatrix(40, 5) = "MyCell"

    Debug.Print fg.FindRow("MyRow")        ' find a row by its RowData
    > 30

    Debug.Print fg.FindRow("MyCell")       ' no rows have RowData = "MyCell"
    > -1
    Debug.Print fg.FindRow("MyCell", , 5)  ' look for text in column 5
    > 40

    Debug.Print fg.FindRow("MYCELL", , 5)         ' case-sensitive search fails
    > -1
    Debug.Print fg.FindRow("MYCELL", , 5, False)  ' case-insensitive search succeeds
    > 40

    Debug.Print fg.FindRow("My", , 5)             ' full-match search fails
    > -1
    Debug.Print fg.FindRow("My", , 5, , False)    ' partial-match search succeeds
    > 40


Note: The FindRow method is useful for searching rows through code. To allow users to perform incremental searches by typing into cells, use the AutoSearch property instead.


Data Type
Long



Код: Выделить всё
ShowCell (Row,Col)
Пора уже всем хорошим людям собраться и убить всех плохих людей.

След.

Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot, Google-бот, Yandex-бот и гости: 42

    TopList