Перейти к содержанию
Fire Monkey от А до Я

Поиск сообщества

Показаны результаты для тегов 'TGrid'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Общие вопросы
    • Анимация
    • Графика
    • Стили
    • Базы данных и REST
    • Компоненты
    • Положение, размеры, выравнивание
    • Работа с текстом
    • Приложение и формы
    • Отладка
    • Развертывание приложений
    • Вопросы по языку Object Pascal и RTL
    • Общая информация о TControl
    • События
    • Прочие вопросы
  • Вопросы по платформам
    • Android
    • iOS
    • OSX
    • Windows
    • Windows Phone
    • Linux
  • Вопросы по использованию RAD Studio
    • Лицензирование
    • Сборка проектов
    • Multi-Device Designer
    • Редактор кода
    • Вопросы
  • Обучение
    • Основная информация
    • Вопросы
    • Отзывы
  • Поиск специалистов по FireMonkey
    • Консультации
    • Ищу подрядчика
  • Дополнительные ресурсы по FireMonkey
    • Сторонние компоненты
    • Приложения, написанные с использованием FireMonkey
    • Примеры
    • Руководства
    • Шаблоны
    • Статьи и заметки
    • Информация о версиях RAD Studio
    • Новости
  • Организация работы данного форума

Поиск результатов в...

Поиск контента, содержащего...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Регистрация

  • Начало

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


StackOverflow


Защита от ботов


Город


Интересы

Найдено: 21 результат

  1. dmitry2022

    FMX TGrid OnCellClick событие

    На форме лежит TGrid у него есть TCheckColumn. Подключен обработчик OnCellClick. Вопрос: как добиться надежного вызова OnCellClick события при кликах левой кнопкой мыши(ЛКМ) для произвольной строки, если: 1) Нажатия ЛКМ происходят по одной и той же ячейке в колонке TCheckColumn; 2) Нажатия ЛКМ не сопровождаются смещением курсора мыши. Для лучшего пояснения сути вопроса приведу картинку(см. ниже). На ней нажимается ЛКМ в одной и той же ячейке без смещений курсора. События возникающие в этой ситуации протоколируются в окне CodeSite(оно справа). Как видно из картинки: ячейка в столбце TCheckColumn меняет свое состояние(то появляется галочка то исчезает), но событие OnCellClick возникает только 1 раз. Сама картинка: Код тестового приложения привожу ниже:
  2. Win10 Delphi 10.3.1 необходимо реализовать редактирования ячейки TGrid, на котором есть LiveBindings нужна маска редактирования и шрифт пробовал OnCreateCustomEditor procedure TForm1.Grid1CreateCustomEditor(Sender: TObject; const Column: TColumn; var Control: TStyledControl); var tmpEdit: TEdit; begin tmpEdit := TEdit.Create(self); tmpEdit.MaxLength := 3; tmpEdit.Font.Style := tmpEdit.Font.Style + [TFontStyle.fsUnderline]; Control := tmpEdit; end; MaxLength работает ок, но хотелось бы всё-таки маску жирный шрифт не устанавливается введенное значение не сохраняется, по окончании редактирования восстанавливается старое значение, даже если tmpEdit в LiveBindings привязать к LinkFillControlToField
  3. Доброго времени суток. Нашел проблему при написании кастомного грида, который наследуется от TCustomGrid: При использовании LiveBindings между кастомным гридом и набором данных, после закрытия среды вываливается AV: Подскажите, что я упустил? Минимальный код кастомного грида:
  4. Здравствуйте, у меня возник вопрос Как базу данных подключить к TGrid? Я использую Delphi XE3 и База данных Accsess: ADOConnection + ADOQuery + DataSource. И вот как отобразить в TGrid Таблицу бд ?
  5. niddarun

    Медленная прокрутка

    На форме стоит tgrid при прокрутке есть заддержка. не большая но все равно не приянто. программа под windows. И еще при прокрутке идет нагрузка на процессор.
  6. GoldenEalge

    TGrid multiselect

    Всем привет, подскажите как организовать MultiSelect в grid Нашел статью ,но как понимаю она уже не очень актуальна Поиск по форуму тоже не дал результатов
  7. Delphi 10.1 Berlin Как передать список в value? Value:=TValue.From<TStringList>(StringList); - не работает. Можно ли из TValue получить индекс выбранного элемента?
  8. Пишу кроссплатформенное приложение. Результат поиска отображается в TGrid. Стал вопрос отображения картинки в одной из колонок. На Windows все ок, но на планшете происходят просто чудеса: при первом отображение все корректно, но если простоколить вверх-вниз как картинки одни перетираются другими, часть вообще отображается вверх ногами. Код для сохранение картинки(jpg) в базу: if Assigned(sm) then begin sm.Position := 0; //TBlobField(dmData.cdsPlayerData.FieldByName('Photo')).LoadFromStream(sm); vImage := TImage.Create(nil); try sm.Position := 0; vImage.Bitmap.LoadFromStream(sm); vKoef := vImage.Bitmap.Height / 64; vImage.Bitmap.Resize(Trunc(vImage.Bitmap.Width / vKoef), Trunc(vImage.Bitmap.Height / vKoef)); sm.Free; sm := TMemoryStream.Create(); try vImage.Bitmap.SaveToStream(sm); TBlobField(dmData.cdsPlayerData.FieldByName('SmallPhoto')).LoadFromStream(sm); finally sm.Free; end; finally vImage.Free; end; end{if}; До скрола: После скрола: Пробовал и LiveBinding, и ручную прорисовку - результат один и тот же. Есть идеи что не так? P.S. Знаю что нужно делать через TListView, но заказчик хочет «сеточку как в старой программе», так как на android будет работать только на планшетах – я согласился.
  9. Нужно сделать компонент TGrid. Стандартный Grid не подходит, потому что нужно чтобы строки (raws) были разной высоты, а также чтобы была возможность соединять (сливать) ячейки. Я решил сделать его на основе TListView и его DynamicAppearance. Использовать кастомные объекты, отнаследованные от TListItemObject + возможность рисовать на Canvas каждого ListItem, например прямоугольники. Т.к. колонки он не поддерживает, есть идея использовать THeader и подстраивать их под размер своих колонок. Также важно быстродействие компонента. Как вы думаете есть ли в этом смысл? Возможно кто-то уже занимался подобным, и может что-нибудь посоветовать. Спасибо.
  10. 1. Можно ли установить разную высоту у ячеек (точнее raws)? 2. Можно ли объединять ячейки? 3. Если писать свой компонент, и отнаследоваться от ScrollBox - то при отрисовке всех ячеек, будут ли отрисовываться невидимые ячейки или TscrollBox игнорирует и не отрисовывает невидимую часть? Или лучше стоит отнаследоваться от TScrollContent и высчитывать самостоятельно? Компонент не будет связан со стилями. Как будет быстрее в плане производительности компонента? 4. Что лучше для этого случая TScrollContent или TScrollBox? 4. Если 1 и 2 - нет, то придется писать свой компонент - возможно у вас будут какие то рекомендации на этот счет. Спасибо. Очень жду ваш ответ. @RoschinSpb
  11. Есть хоть какая-нибудь возможность зафиксировать первый столбец, чтобы он не прокручивался? То есть нужен аналог свойства FixedCols из VCL,
  12. Как можно изменить тип клавиатуры(нужно сделать по умолчанию только числа) для контрола, у которых нет свойства KeyboardType? Сейчас работаю в TGrid, и вот нужно сделать для колонки ввод чисел. Вроде просмотрел темы - не увидел аналогичной
  13. приложение на андроид, Seattle, TGrid при повороте на OnResize меняю ширину столбцов на половину ширины: sgSettings->Columns[0]->Width = sgSettings->Width / 2 - 2; sgSettings->Columns[1]->Width = sgSettings->Width / 2 - 2; после этого сами столбцы рисуются правильно а их хедеры не меняются, получается смещение: после выделения ячейки по клику таблица перерисовывается правильно, куда смотреть?
  14. Начинал проект под андроид на CBuilder XE7, продолжаю на 10 Seattle, проблема с компонентом TStringGrid остается. Прокрутка по вертикали срабатывает с небольшой, но заметной задержкой. Прокрутка по горизонтали совсем не годится, около полсекунды задержка. Сначала полагал что много строк(было около 500), оставил 10 - ничего не изменилось. Проблема, субъективно, в задержке между началом жеста и реакцией приложения на него. Т.е. небольшая таблица тормозит очень заметно на фоне прокрутки графики в закладке карты. В TListBox, по отзывам, быстродействие тоже не очень. Выложил как есть на бета-тест, думаю будут претензии, да и неизящно как то.
  15. Syb

    TGrid+LiveBindings

    По аналогии с VCL думал что при перемещении по grid прикрепленному через livebindings к dataset будет вызываться событие afterscroll в dataset, а этого не происходит тоесть перемещение по таблице никак нельзя поймать там. А это очень не удобно ведь не всегда есть возможность выводить в grid ключевые поля например. Возможно я чего то не вижу помогите кто в курсе?
  16. Всем доброго дня! Задавал этот вопрос на Stackowerflow, но ответа не получил даже с учетом выделенного bounty http://stackoverflow.com/q/32258525/5043424. Сущность вопроса в следующем. Создается колонка для FMX TGrid: type TDatecell = class(TCalendarEdit) end; TDateColumn = class(TColumn) private function CreateCellControl: TStyledControl; override; public constructor Create(AOwner: TComponent); override; end; ... constructor TDateColumn.Create(AOwner: TComponent); begin inherited; end; function TDateColumn.CreateCellControl: TStyledControl; begin Result := TDatecell.Create(Self); end; Все работает. Такую колонку можно добавить в TGrid. Не получается ее связать с полем FDQuery, получающим данные из поля MySQL типа date. Пробовал в runtime вызывать нечто такое: LinkGridToDataSourceBindSourceDB1.Columns.Add; LinkGridToDataSourceBindSourceDB1.Columns.Items [LinkGridToDataSourceBindSourceDB1.Columns.Count-1]. MemberName:='date_set_by_user'; но этот код удаляет все колонки (если они не были определены и определялись автоматически согласно списка полей) и добавляет вместо них колонку - экземпляр класса TColumn. Подскажите, как связать колонку своего типа с TDataSet или как указать свой тип колонки в LinkGridToDataSourceBindSourceDB1.Columns? Я представляю, как заполнить TGrid вручную, но, мне кажется, это замедлит код и вынудит писать обработчики изменения DataState и вручную прописывать все изменения во всех ячейках в DataSet, а также реакцию DS на изменение выделения строки в TGrid. OnGetValue не срабатывает, если есть LiveBindings Link... Подскажите, пожалуйста, как это сделать. Застрял...
  17. Syb

    LookUp в TGrid\Tstringgrid

    Возможно как то в gridах сделать поле lookup, которое можно будет редактировать в Gridе(как в combobox) , а не только видеть значение? Тип поля без привязки к данным popup есть у TGrid теоретически... а если привязать забайндить к датасету, то стиль popup у поля отсутствует....
  18. Добрый день столкнулся такой проблемой до этого использовал StringGrid и заполнение в цикле происходило без проблем Form1.StringGrid1.RowCount := Form1.StringGrid1.RowCount + 1; Form1.StringGrid1.Cells[0, i] := quantity.Value; Form1.StringGrid1.Cells[1, i] := name.Value; Form1.StringGrid1.Cells[2, i] := status.Value; Form1.StringGrid1.Cells[3, i] := adres.Value; Form1.StringGrid1.Cells[4, i] := koment.Value; Form1.StringGrid1.Cells[5, i] := orderdate.Value; Form1.StringGrid1.Cells[6, i] := orderdostavka.Value; Form1.StringGrid1.Cells[7, i] := statuss.Value; теперь не могу понять как заполнять колонки grida подскажите пожалуйста как обращаться к конкретной ячейке в строке
  19. Всем доброго времени суток. На форме есть TGrid: Данные к нему прикручены через LiveBinding от TFDQuery: Как мне узнать значение ячейки первого столбца, активной строки? Пробовал реализовать через событие Grid1SelectCell: procedure TForm5.Grid1SelectCell(Sender: TObject; const ACol, ARow: Integer; var CanSelect: Boolean); var CellStr: string; //Значение ячейки первого столбца. begin CellStr := TTextCell(Grid1.Columns[0].Controls.Items[ARow]).Text; end; Вот этот код: TTextCell(Grid1.Columns[0].Controls.Items[ARow]).Text; я вычитал здесь: http://fire-monkey.ru/topic/120-tgrid-kak-ustanovit-tekst-v-iacheike-tcheckcolumn-delphi-xe-4/ Однако, при его выполнение срабатывает исключение: "argument out of range". Подскажите, как мне решить эту задачу? Версия среды: XE7 FMX.
  20. Здравствуйте. Как в TStringGrid удалить определенную строку? А так же как полностью удалить все строки?
  21. Здравствуйте уважаемые форумчане! Есть такой вопрос, в Grid есть колонка TCheckColumn, через событие OnGetValue, можно установить состояние чекбокса, а можно-ли как-то добавить текст рядом с чекбоксом? Ранее, в XE2, у TColumn был метод CellControlByRow, и работала такая конструкция: var tc : TTextCell; begin // ... tc := columns[col].CellControlByRow(row) as TTextCell; if assigned(tc) then tc.Text := 'текст'; end; Есть ли какая-нибудь альтернатива для XE4?
×
×
  • Создать...