1 / 1 / 1
Регистрация: 09.11.2018
Сообщений: 66

Изменение размера полей

04.06.2019, 23:49. Показов 2506. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Указывайте, пожалуйста, на какой из вопросов отвечаете(на всякий случай).
1 вопрос: Как их изменить так, чтобы они оставались со своими размерами? В Unit.pas(курсовая работа) я изменяю, сохраняю и запускаю проект, но ничего не изменяется и они остаются большими. Никак не могу изменить. В свойстве Width каждого Column изменял, но ничего меняется.

2 вопрос: Можно ли как-то изменить Код строки? Т. к. они идут не по порядку(хотелось бы от 1 и т. д.). На скрине видно, хочу, чтобы при удалении код освобождался и можно было снова его заполнить новыми данными. Получаются пробелы, которые не знаю как убрать. Вот 1,2,6.., а 3,4,5 больше никак не заполнить.
Миниатюры
Изменение размера полей   Изменение размера полей   Изменение размера полей  

0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.06.2019, 23:49
Ответы с готовыми решениями:

Изменение значений полей в БД
Здравствуйте. Имеется таблица в которой нужно выполнить математическое действие для некоторых полей. Имеется DBEdit в котором...

Изменение полей DBGrid
Всем привет! Такой вопрос: я в DBGrid помещаю таблицу, в которой в одном столбце находится численные значения и нужно, чтобы выводилось не...

Изменение наименования полей у БД Paradox.
Уважаемые форумчане, есть у меня небольшой просьба. Не подскажите ли Вы как можно программно изменить наименование поля у базы данных...

8
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,425
Записей в блоге: 3
05.06.2019, 04:25
Цитата Сообщение от DevilAndEvil Посмотреть сообщение
Указывайте, пожалуйста, на какой из вопросов отвечаете(на всякий случай)
DevilAndEvil, а Правила форума не для Вас писаны?
п. 4.4 На каждый вопрос создавайте по одной теме - это помогает избежать путаницы в ответах и облегчает поиск.
По хорошему такие темы разделять на две надо, или закрывать, если при разделении смысл одной из получившихся тем потеряется, что и произойдет в Вашем случае. А Вы еще указываете, как Вам тут отвечать
 Комментарий модератора 
И это не троллинг и не стариковское ворчание - это официальное предупреждение администрации форума; примите это к сведению, чтобы избежать неприятных недоразумений в дальнейшем!
1
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,425
Записей в блоге: 3
05.06.2019, 05:30
Лучший ответ Сообщение было отмечено DevilAndEvil как решение

Решение

теперь по делу:
для начала отвечаю на второй вопрос (все, как Вам угодно )
1. Сразу забывайте про русский язык в названиях таблиц и полей БД - избежите в дальнейшем многих неприятностей!
2. Не надо использовать в качестве набора данных ADOTable - технологию прошлого тысячелетия - с базами данных работают посредством SQL-запросов и компонентов ADOQuery
3. Поле "Код" (оно же ID в нормально сделанных таблицах) - поле автоинкрементное, поэтому без дополнительных тягомотных и никому не нужных танцев с бубном это сделать не получится. Я не говорю, что нельзя, я говорю, что не нужно... Потому, что Автоинкрементное поле в 99% случаев является первичным ключом, обеспечивая уникальность каждой записи таблицы БД, а так же служит для связи между таблицами. Это чисто служебное поле, нужное во всяких внутрибазовых делах и выдавать его на обозрение, а уж тем более на редактирование, конечному пользователю не только нет надобности, но и настоятельно НЕ рекомендуется.
4. Если Вы что-то там удаляете в своих таблицах - пересматривайте логику своего приложения! В БД не надо ничего удалять, надо устанавливать какой либо признак, что данная запись больше не участвует в общей работе. Да, это приведет к незначительному увиличению объема БД (а если Вы не используете функции сжатия БД - то и не приведет, т.к. если не сжать БД средствами самой СУБД размер файла БД не изменится ни на байт, хоть вы все записи поудаляйте). Но плюсом этого метода является то, что Вы всегда имеете информацию о том, что и когда "удалялось", можете это посмотреть, проверить и, при ошибочном действии, всегда исправить ситуацию, просто изменив статус записи и вернув ее "в строй"

теперь ответ на вопрос 1.
Изменить мышью ширину колонок DBGrid в DesignTime - абсолютно не достаточно. Точнее - это вообще бессмысленная работа. Для решения проблемы есть 2 пути
1. Указать адекватную ширину поля при создании таблицы БД. Тогда и при выполнении приложения все будет нормально отображаться



2. Использовать свойства самого DBGrid-а. Преимущества очевидны: Вы можете показать только некоторые поля, а не все подряд, можете изменить отображаемый заголовок колонки, при том, что реальное имя поля остается неизменным, выставить нужную ширину, цвета и т.д. Для этого:
а) Вам необходимо задать набор полей для отображения. Делаем клик ПКМ на DBGrid, выбираем Columns Editor..., добавляем столько полей, сколько хотим видеть в своей сетке...



б) Для каждого добавленного поля устанавливаем свойство FieldName - связываем столбец сетки с реальным полем набора данных, оформляем заголовок колонки и выставляем требуемую ширину - смотрится куда как эстетичнее, не показываются "лишние" данные, хотя все они присутствуют в наборе и к ним всегда можно обратиться...
Миниатюры
Изменение размера полей  
1
5989 / 4564 / 1096
Регистрация: 29.08.2013
Сообщений: 28,207
Записей в блоге: 3
05.06.2019, 08:24
по поводу Кода - сам id который автоинкремент оставляй в базе и не показывай пользователю
а если хочешь пронумеровать строки красиво, то используй ROW_NUMBER (которого в аксессе конечно нет)
0
 Аватар для ZfoxAK
670 / 560 / 242
Регистрация: 26.11.2012
Сообщений: 2,191
05.06.2019, 09:33
Цитата Сообщение от qwertehok Посмотреть сообщение
не показывай пользователю
Не согласен. При поиске ввод числа проще чем фамилии, где по возможно перепутать буквы и даже Like не поможет, а циферки однозначно покажет искомую запись. Например номер заказа, номер заказчика в базе. Так же при вводе данных организовать возможность ввода ИД номера для оператора лучше чем выпадающий список хотя бы из трех значений. ИМХО Выпадающий список как основной способ выбора данных ЗЛО для оператора.
А вот давать редактировать пользователю ИД это не зло, это идиотизм.
0
5989 / 4564 / 1096
Регистрация: 29.08.2013
Сообщений: 28,207
Записей в блоге: 3
05.06.2019, 09:36
ZfoxAK,
я писал про данный конкретно случай
тут ТС пишет
Цитата Сообщение от DevilAndEvil Посмотреть сообщение
они идут не по порядку(хотелось бы от 1 и т. д.)
0
Модератор
 Аватар для D1973
9929 / 6467 / 2457
Регистрация: 21.01.2014
Сообщений: 27,425
Записей в блоге: 3
05.06.2019, 09:44
Цитата Сообщение от ZfoxAK Посмотреть сообщение
Например номер заказа, номер заказчика в базе
ZfoxAK, не знаю, не знаю... ID - это ID, уникальный идентификатор, внутренняя кухня БД, а номер заказа, к примеру - это отдельное поле, наряду с другими, которое, да, может быть уникальным числовым, а может и буквы содержать и обнуляться каждый год/месяц/день... И полагаться на него, используя в качестве ключевого поля, я бы не стал...
0
 Аватар для ZfoxAK
670 / 560 / 242
Регистрация: 26.11.2012
Сообщений: 2,191
05.06.2019, 10:08
qwertehok, В данном случае я вижу некий справочник. И без знания цели вывода данного справочника дать корректный совет о выводе ИД я бы не стал.
Цитата Сообщение от DevilAndEvil Посмотреть сообщение
На скрине видно, хочу, чтобы при удалении
Я могу предположить, что в данном случае ведется речь о редактировании справочника. Исходя из этого предположения: вывод всего справочника с Ид имеем место быть.

Добавлено через 10 минут
D1973, Почему бы эту кухню не использовать. У меня есть наглядный пример данного использования и очень удобный. А главное скорость ввода оператором данных показывает превосходство такого подхода. Например МКБ-10.
Цитата Сообщение от D1973 Посмотреть сообщение
номер заказа, к примеру - это отдельное поле, наряду с другими, которое, да, может быть уникальным числовым, а может и буквы содержать и обнуляться каждый год/месяц/день...
Но в каждом отдельном случае нужно рассматривать использование того или иного подхода исходя из знаний, опыта и предпочтения. Как мы все и делаем.

Добавлено через 2 минуты
qwertehok, А о той хотелки ТС-а как 1,2,3 вы полностью правы. И идет это от непонимания сути ИД и как "живет" БД
0
05.06.2019, 10:20

Не по теме:

Цитата Сообщение от ZfoxAK Посмотреть сообщение
А главное скорость ввода оператором данных показывает превосходство такого подхода
тут абсолютно согласен
например заносить товары в накладную проще по id товара, сам видел когда сотрудник вбивал данные как пулемет
в то же время этот ID - ключевое поле в БД

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
05.06.2019, 10:20
Помогаю со студенческими работами здесь

Изменение размера формы
Есть ли способ, что б изменять размер формы. но при этом с начало будет показана рамка нового размера а за тем форма примет ее значение. ...

Изменение размера формы
Скажите пожалуйста, как програмно уменьшить размер формы? По нажатию на кнопку (Butto1) размер формы менялся на нужные размеры заданные в...

Изменение значений полей в 2х таблицах ADO
Доброе время суток, подскажите пожалуйста как можно выполнить задачу - имеются 2 таблицы, в первой таблице 1 поле - специальность, оно же...

Авто изменение размера полей, подчиненной формы в зависимости от длины текста
Здравствуйте. Можно ли сделать так, чтобы автоматически устанавливались размеры полей,полей со списком,а также размер подчиненной формы,...

Изменение размера окна -> изменение размера картинки
Есть картинка на Homepage, как сделать так, что бы при изменении окна браузера размер картинки автоматически изменялся соответственно...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

Новые блоги и статьи
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2. Задача: отобразить спецтехнику, которая на данный момент находится в ремонте. Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru