9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
1

Работа с компонентом DBLookupComboBox

10.03.2010, 09:28. Показов 14472. Ответов 96
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Вопрос касающийся компонента DBLookupComboBox.

У меня есть таблица DBGrid. Я встаю на какую-нибудь запись и хочу ее отредактировать. Нажимаю на кнопку редактировать и у меня появляется форма с компонентом DBEdit и DBLookupComboBox Эти компоненты связаны с базой. Т.е. при открытии формы DBEdit отображает значение записи на которой я стаю и я могу ее менять, а с DBLookupComboBox так не получается. Мало того что изначально компанент ничего не показывает, а только после выбора из списка, но и при выборе из списка нужного значения и после нажатия кнопки сохранить в базе меняется лишь то поле которое меняла в DBEdit. В чем причина??
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2010, 09:28
Ответы с готовыми решениями:

DBLookupCombobox работа с компонентом
Здравствуйте Форумчане, Имеется таблица со следующими полями: ID, ФИО, Отображение ID ключевое...

Работа с БД и компонентом listbox
Подскажите, как в компонент listbox вставить данные из БД? Заранее благодарен.

Работа с компонентом DbEdit
Подскажите как можно запретить вводить пробелы точки, цифры и т. д. в общем все кроме букв при этом...

Работа с компонентом TDBGrid
Здравствуйте помогите пожалуйста как при нажатии на одну строчку в DBGrid выводились все данные...

96
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
17.03.2010, 09:16 61
Author24 — интернет-сервис помощи студентам
вот как в оригинале
Delphi
1
2
3
4
5
6
7
8
9
if Application.MessageBox(PChar('Вы действительно хотите удалить' +#13+ 'предмет "'+Predmet.ListBox1.Items.Strings[Predmet.ListBox1.ItemIndex]+'"?'), 'Внимание!!!',MB_YESNO)=id_YES then
    begin
      dm1.ADOCommand1.CommandText:= ''+
        'DELETE '+
        'FROM Predmet '+
        'WHERE (((Predmet.Name)="'+Predmet.ListBox1.Items.Strings[Predmet.ListBox1.ItemIndex]+'"))';
      dm1.ADOCommand1.Execute;
      Predmet.ListBox1.Items.Delete(Predmet.ListBox1.ItemIndex);
    end;
Добавлено через 8 минут
Кстати
DataModule1.ADOPredmet
это не таблица))
это запрос... Из него сложно удалять
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
17.03.2010, 11:19  [ТС] 62
Спасибо

Добавлено через 56 минут
Почему запрос? Нет это таблица. Все получилось, как было задумано

Добавлено через 53 минуты
Подскажите, пожалуйста, как сделать так чтобы на диаграмме DBChart по оси абсцисс стояли названия факультетов, а по оси ординат количество человек?
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
17.03.2010, 15:53 63
Никак... Даже в легенду их не запихать

Добавлено через 21 секунду
Стандартный компонент - есть стандартный компонент...
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
23.03.2010, 11:17 64
Отпишитесь хоть что получили за курсовую
Интересно ведь
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
23.03.2010, 12:00  [ТС] 65
Да я ее еще не доделала. Не хочу сдавать какая есть. Маленько переделываю. Скажите, а что DBCheckBox1 только для просмотра данных? Редактировать нельзя?
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
23.03.2010, 12:09 66
можно. у меня в некоторых стоит ReadOnly просто. Т.е. для просмотра только
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
23.03.2010, 12:12  [ТС] 67
У меня ReadOnly не стоит. Если я галочку снимаю в базе галочка остается
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
23.03.2010, 12:13 68
значит вы работете с SQL-запросом (query), а не с таблицей (Table)
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
23.03.2010, 12:16  [ТС] 69
В том то и дело, что работаю с таблицей (Table)

Добавлено через 41 секунду
Хотя нет Вы правы

Добавлено через 44 секунды
А если работаю с SQL-запросом (query) то нельзя редактировать?
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
23.03.2010, 12:21 70
нет.. SQL-запрос это виртуальная таблица (сборище данных с многих таблиц)
компутер просто незнает куда поставить true от вашего DBCombo...

Добавлено через 27 секунд
а потому - вообще никуда не ставит))
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
23.03.2010, 13:14  [ТС] 71
Теперь я работаю с тейблом, но ничего не выходит. В чем еще может быть причина?
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
23.03.2010, 13:20 72
Комбо бокс не подключен к таблице.

Добавлено через 16 секунд
Хотя... Если он выводит данные - то подключен...
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
23.03.2010, 13:33  [ТС] 73
Получается, только с небольшой задержкой

Добавлено через 4 минуты
Как сделать так чтобы я выбирала запись в DBGrid а в DBLookupComboBox1 эта запись отображалась?
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
23.03.2010, 14:19 74
ДБгрид подключен к SQL-запросу. Если у запроса есть поле ID (у моих в таблице есть, но столбец с ним имеет ширину 1) то вам надо, используя функцию Locate() переместиться в таблице к нужной строке

Добавлено через 2 минуты
Цитата Сообщение от AlenaIvanova Посмотреть сообщение
DBLookupComboBox1
ооочень странный компонент... Я одно время с ним бился-бился и бросил... Использовал обыкновенный Комбо..
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
24.03.2010, 04:39  [ТС] 75
Спасибо за ответ. Как сдам, так отпишусь.
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
24.03.2010, 09:03 76
Удачи
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
24.03.2010, 09:35  [ТС] 77
Андрей Борисови, У меня не получается с вводом данных в базу. Вы говорили, что нужно чтобы с тейблом была связь. А у меня с запросом. Я совсем запуталась. Не могли бы посмотреть что можно сделать?
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
24.03.2010, 13:56 78
Да легко

Добавлено через 58 секунд
кстати. сохрание данных через запрос можете подсмотреть в формах заполнения справочников
0
9 / 9 / 0
Регистрация: 24.02.2010
Сообщений: 175
25.03.2010, 06:07  [ТС] 79
Давайте я Вам тогда базу скину. У меня есть две таблицы: оценки и поступающие, которые связаны с запросами, а не с таблицами. Поэтому и не могу добавлять/изменять/удалять записи. А почему дбгриды связывала с запросами, потому что нужно было связать данные.

Еще такой вопрос: Как еще можно связать данные (не через запрос)? Пробовала в датамодуле на вкладке диаграмм построить связи, не получается.

Добавлено через 1 минуту
И еще если можно то ничего кардинально не меняйте. Так чтобы я понимала. Я же все таки в базах данных новичок А то если честно сказать, с Вашей базой я не совсем разобралась.
0
714 / 402 / 33
Регистрация: 04.10.2009
Сообщений: 1,686
25.03.2010, 11:47 80
Еще один способ связи данных в таблицах - это создание связей MasterField, т.е. связей таблиц по ключевым полям. Технология старая и работоспособная, но достаточно трудоемкая. Требует Обязательного приведения таблиц к 3-ей нормальной форме.
Не уверен, что живая таблица может быть таким образом связана с запросом, т.к. запрос - это динамическа структура а таблица - физическая...
0
25.03.2010, 11:47
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
25.03.2010, 11:47
Помогаю со студенческими работами здесь

Работа с компонентом TpFibDataSet
Доброго времени суток Использую Delphi XE3 FibPlus 7.3 FireBird 2.5 Вопрос следующего...

Работа с DBLookupComboBox
Всем привет. Помогите пожалуйста разобраться возможно ли сделать так, что бы в случае когда человек...

Работа с компонентом memo
Такой вопрос: Примерный код: Case RadioGroup1.ItemIndex of 0:sum:=sum+a; 1:sum:= sum+b;...

Работа с компонентом memo - поиск слова,или строчек
Есть программа - моя,в ней есть компонент memo,мне нужно чтоб по нажатию типо label1 в тексте...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru