5 / 3 / 3
Регистрация: 29.05.2012
Сообщений: 328

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

17.11.2013, 13:35. Показов 1085. Ответов 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 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru