Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Компоненты и классы
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.02.2011, 20:02
Сорокин_Роман Сорокин_Роман вне форума
Прохожий
 
Регистрация: 29.11.2010
Сообщения: 34
Репутация: 10
По умолчанию Компонент для отображения табличных данных

Для отображения табличных данных можно использовать компонент TStringGrid, в целом не плохой, но имеющий ряд ограничений:
1. События клика мышкой и выделения ячейки не распространяются на "фиксированные ячейки". Поэтому, в частности, ни коим образом нельзя отсортировать данные в таблице по какому-то признаку. (Как, например, делаем в проводнике windows в режиме показа "Таблица". Щёлкаем по "Вид" и всё упорядочивается по "виду"...)
2. Внешний вид немного староват и груб. Сравнить хотя бы с той же таблицей в windows 7.


3. На последнем скриншоте видна всплывающая подсказка, что чисто невозможно в TStringGrid.

Вопрос: где найти сравнительно современный компонент, отвечающий требованиям 1-3 и имеющий функциональность TStringGrid?

Последний раз редактировалось Сорокин_Роман, 19.02.2011 в 20:37.
Ответить с цитированием
  #2  
Старый 19.02.2011, 20:39
Аватар для Pilot_Red
Pilot_Red Pilot_Red вне форума
Продвинутый
 
Регистрация: 01.11.2006
Адрес: Карелия
Сообщения: 702
Версия Delphi: D7
Репутация: 11581
По умолчанию

Если хочешь что нибудь на подобие проводника,то ListView может помочь
Ответить с цитированием
  #3  
Старый 19.02.2011, 21:36
Сорокин_Роман Сорокин_Роман вне форума
Прохожий
 
Регистрация: 29.11.2010
Сообщения: 34
Репутация: 10
По умолчанию

Спасибо за отзывчивость, будем пробовать.
ЗЫ: но я не хочу создать "что-нибудь на подобие проводника". Мне просто нужна таблица, в которой:
1. Можно будет отсортировать данные по любому столбцу (просто достаточно, чтобы можно было указать функцию для вызова, а там дальше сортировка программируется; т.е. нужно событие на нажатие фиксированных ячеек).
2. Если полностью строка не входит в ячейку, то вместо части, которая не входит, писалось "...", а при наведение на ячейку всплывалась подсказка.
3. И нужен красивый внешний вид, а не эти "углы".
Ответить с цитированием
  #4  
Старый 19.02.2011, 21:54
Сорокин_Роман Сорокин_Роман вне форума
Прохожий
 
Регистрация: 29.11.2010
Сообщения: 34
Репутация: 10
По умолчанию

Что-то не могу найти литературки по этому компоненту. Не подкините?
Ответить с цитированием
  #5  
Старый 19.02.2011, 22:01
Аватар для Pilot_Red
Pilot_Red Pilot_Red вне форума
Продвинутый
 
Регистрация: 01.11.2006
Адрес: Карелия
Сообщения: 702
Версия Delphi: D7
Репутация: 11581
По умолчанию

этот компонент удовлетворяет всем вышеперечисленным запросам))
на оснвое его много сделано.
практически все стандартные компоненты delphi деревянные
компонент xpmanifest немного преукрасит внешний вид проги
вот собственно дока http://programmersclub.ru/files/delp...fessionals.rar.

Последний раз редактировалось Pilot_Red, 19.02.2011 в 22:04.
Ответить с цитированием
  #6  
Старый 19.02.2011, 22:30
Сорокин_Роман Сорокин_Роман вне форума
Прохожий
 
Регистрация: 29.11.2010
Сообщения: 34
Репутация: 10
По умолчанию

Цитата:
практически все стандартные компоненты delphi деревянные
. Это выражение доставляет.
По сабжу: И спасибо за книжку. С компонентом разобрался.

PS: xpmanifest? А sevenmanifest существует? Или и так встанет?
Ответить с цитированием
  #7  
Старый 19.02.2011, 22:44
Аватар для Pilot_Red
Pilot_Red Pilot_Red вне форума
Продвинутый
 
Регистрация: 01.11.2006
Адрес: Карелия
Сообщения: 702
Версия Delphi: D7
Репутация: 11581
По умолчанию

встаааааааааанет..
Ответить с цитированием
  #8  
Старый 20.02.2011, 07:00
Аватар для artemavd
artemavd artemavd вне форума
Начинающий
 
Регистрация: 05.08.2008
Сообщения: 115
Репутация: 12
По умолчанию

Цитата:
1. События клика мышкой и выделения ячейки не распространяются на "фиксированные ячейки". Поэтому, в частности, ни коим образом нельзя отсортировать данные в таблице по какому-то признаку. (Как, например, делаем в проводнике windows в режиме показа "Таблица". Щёлкаем по "Вид" и всё упорядочивается по "виду"...)
Используйте сторонний компонент. Raize например. Или TMS. Или использовать компонент ShelltreeView:

Цитата:
На последнем скриншоте видна всплывающая подсказка, что чисто невозможно в TStringGrid.
Возможно. хотя бы как тут

Последний раз редактировалось artemavd, 20.02.2011 в 07:02.
Ответить с цитированием
  #9  
Старый 20.02.2011, 23:31
Сорокин_Роман Сорокин_Роман вне форума
Прохожий
 
Регистрация: 29.11.2010
Сообщения: 34
Репутация: 10
По умолчанию

Как прикрепить к ListView (к конкретному Item'у или SubItem'у) визуальный компонент. Через TPersisten.Parent = ListView1.Items[0].Data прикрепляется в легкую, но если сдвинут немного форму, то всё. Как по-нормальному сделать?

ЗЫ: нужно для того, чтобы при нажатии на определённый SubItem выполнялась процедура. Мне из решений видится только приаттачивание кнопки или остлеживание соответствия "координаты мышки" - "subitem на этих координатах". Насчёт последнего: что-то подобное было в StringGrid (узнавание ячейки по координатам мыши), здесь есть?

Добавлено через 5 минут
Нашёл способ определить item под курсором. (Функция [DELPHI]GetItemAt(X, Y: integer)[/DELPHI]). Вопрос насчёт SubItem'а остаётся открытым.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:31.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter