powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Добавление картинки в колонку true dbgrid
7 сообщений из 7, страница 1 из 1
Добавление картинки в колонку true dbgrid
    #33209433
Настенька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите, как правильно сделать. есть 2 колонки в гриде. надо сделать проверку, если во 2 колонке значение содержит цифры, то в 1 колонку вставить картинку. пробовала такой вариант:

Dim NS As New TrueOleDBGrid80.Style
NS.ForegroundPicture = ImageList1.ListImages(5).Picture
TDBGrid1.Columns(2).AddRegexCellStyle -1, NS, "[0-9]"

всё правильно работает, т.е. он выводит картинки во 2 колонку. а мне надо, чтобы условие было тем же, а картинка выводилась в 1 колонке. помогите!!!
...
Рейтинг: 0 / 0
Добавление картинки в колонку true dbgrid
    #33209506
KuzVit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, попробовать через событие UnboundColumnFetch ?
В нем делать проверку в клонированном рекордсете, и менять стиль, если нужно.
...
Рейтинг: 0 / 0
Добавление картинки в колонку true dbgrid
    #33209516
Настенька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надо обойтись без клонов, может как-то отрисовать эти картинки.
...
Рейтинг: 0 / 0
Добавление картинки в колонку true dbgrid
    #33210466
Фотография Worobjoff
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это надо сделать в запросе: одно и то же поле включить в запрос с разными псевдонимами.
...
Рейтинг: 0 / 0
Добавление картинки в колонку true dbgrid
    #33211872
Настенька
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну включила я это поле, например: 1 колонка: 123, 2 колонка: 9898
поле: 9898 123. вот так высвечивается обе колонки в одной. вопрос дальше: как мне вместо 9898 высветить картинку?
...
Рейтинг: 0 / 0
Добавление картинки в колонку true dbgrid
    #33212241
KuzVit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если сделать еще одну колонку, где только картинки отображать, и туда это значение и записывать?
То есть, как и говорит Worobjoff , одно поле возвращать в двух колонках под разными псевдонимами?
...
Рейтинг: 0 / 0
Добавление картинки в колонку true dbgrid
    #33216052
infant
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно в запросе возвращать поле с флагом (вместо дублирующего): например 1 - число и 0 - не число.
Тогда при загрузке:
Private Sub Form_Load()
Dim vitem As New TrueOleDBGrid80.ValueItem

With TDBGrid1.Columns(Index).ValueItems
.Clear
.Translate = True

vitem.Value = 0
vitem.DisplayValue = LoadPicture("PathFile\NotNumber.bmp")
.Add vitem

vitem.Value = 1
vitem.DisplayValue = LoadPicture("PathFile\IsNumber.bmp")
.Add vitem
End With
........
End sub

Правда в данном случае при изменении значения в grid (столбец со значение номер/не номер) Вам надо будет отслеживать это событие менять значение в столбце с картинкой на 1 или 0

Втрой вариант:
Private Sub Form_Load()
..........
TDBGrid1.Columns(Index).FetchStyle = True
.....
end sub

Private Sub TDBGrid1_FetchCellStyle(ByVal Condition As Integer, ByVal Split As Integer, _
Bookmark As Variant, ByVal Col As Integer, ByVal CellStyle As TrueOleDBGrid80.StyleDisp)

TDBGrid1.Bookmark = Bookmark
If IsNumeric(TDBGrid1.Columns(Col).Value) Then
CellStyle.BackgroundPicture = LoadPicture("PathFile\IsNumber.bmp")
Else
CellStyle.BackgroundPicture = LoadPicture("PathFile\NotNumber.bmp")
End If
End Sub
При переходе на другую строку картинка будет меняться
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Добавление картинки в колонку true dbgrid
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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