Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
5 / 3 / 3
Регистрация: 29.05.2012
Сообщений: 328

ширина столбца

17.11.2013, 13:35. Показов 1078. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день. Подскажите как подогнать ширину столбца в зависимости и введенных данных в него. использую бд акссес
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.11.2013, 13:35
Ответы с готовыми решениями:

Сделать, чтобы добавление происходило по номеру столбца, и номер столбца был переменной
ADOQuery1.SQL.Add('INSERT INTO main(fio,pol) VALUES(''Кравчук Иван Иванович'',''мужской'')'); Как сделать, чтобы добавление...

Ширина столбцов
Здравствуйте в моей программе при запуске в главной таблице dbgrid столбцы широкие надо уменьшить я посмотрел в интернете и потом в columns...

Ширина столбцов в dbgrid
Добрый день! Подскажите, как сделать так, чтобы ширина столбцов в DBGrid автоматически подгонялась при маленьком экране и развернутом?

3
 Аватар для HyperZen
498 / 251 / 56
Регистрация: 16.06.2011
Сообщений: 904
17.11.2013, 16:00
Ширину столбца компонента TDBGrid?
Пользуйтесь поиском (код взят откуда-то с форума):
Delphi
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
procedure DBGridEx_SetColumnOnDataWidth(gr: TDBGrid);
// подгонка ширины колонок  DBGrid под максимальную ширину содержимого поля
var
  FieldWidth,i :integer; // длина текущего значения поля (в пикселах)
  ds :TDataSet; // датасет отображаемый в гриде (рабочий датасет)
  dsC: TADODataSet; // копия рабочего датасета
  arMaxLength : array of integer; // массив в котором хранятся длины колонок (в пикселах)
  fnt : TFont;
  fld :TField;
const
  defborder = 5; // промежуток между ячейками грида
begin
  // установить длину массива = к-ву колонок сетки
  SetLength(arMaxLength,gr.Columns.Count);
 
  // заполнить массив исходными значениями длин колонок сетки
  //исходная длина полей = длине наименования колонки
  for i := Low(arMaxLength) to High(arMaxLength) do
    begin
     // установить фонт канвы = фонту строки заголовка колонки для корректного определения ширины теста
     gr.Canvas.Font := gr.Columns[i].Title.Font;
     arMaxLength[i] := gr.Canvas.TextWidth(gr.Columns[i].Title.Caption) + defborder;
    end;
 
  // если датасет открыт - определить ширину колонок
  if (gr.DataSource <> nil) and (gr.DataSource.DataSet.Active) then
    begin
     ds := gr.DataSource.DataSet;
     // создать копию рабочего датасета
     dsC := TADODataSet.Create(nil);
     dsC.Clone(TADODataset(ds));
     dsC.First;
     while not dsC.eof do
       begin
        for i := Low(arMaxLength) to High(arMaxLength) do
          begin
           // установить фонт канвы = фонту колонки для корректного определения ширины теста
           gr.Canvas.Font := gr.Columns[i].Font;
           // определить максимальную длину значения в каждой колонке датасета
           fld := dsC.FindField(gr.Columns[i].FieldName);
           FieldWidth := gr.Canvas.TextWidth(Trim(fld.DisplayText)) + defborder;
           if arMaxLength[i] < FieldWidth  then
              arMaxLength[i] := FieldWidth;
          end;
        dsC.Next;
       end;
    end;
 
  // установить в гриде длины колонок
  for i := Low(arMaxLength) to High(arMaxLength) do
     gr.Columns[i].Width := arMaxLength[i];
 
  dsC.Free;
  arMaxLength := nil;
end;
1
0 / 0 / 0
Регистрация: 07.11.2013
Сообщений: 75
18.11.2013, 13:13
А какой компонент ты используешь?
0
5 / 3 / 3
Регистрация: 29.05.2012
Сообщений: 328
18.11.2013, 18:34  [ТС]
DBGrid
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
18.11.2013, 18:34
Помогаю со студенческими работами здесь

Ширина колонок произвольно меняется
Вывожу sql выборку из Access mdb через ADO в TDBGrid. Считываю ширину первых колонок, получаю: qry2.Fields.Fields.DisplayWidth = 29, 9,...

Ширина поля по его содержимому
Как в DBGrid установить ширину поля по ширине его содержимого?

DBGrid и ширина столбца
Привет, заметил что при создании нового столбца в таблице (access) DBGrid делает очень большую ширину созданного столбца. Можно как-то...

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

StringGrid and FixCol / ширина первого столбца /
Кто нибудь знает, как в StringGrid сделать ширину первого (фиксированного) столбца шире всех остальных. Если изменять, то изменяется во...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru