Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.01.30;
Скачать: [xml.tar.bz2];

Вниз

выделение в comboBox   Найти похожие ветки 

 
Guest00   (2005-01-20 06:09) [0]

Здравствуйте !
На ToolBar (TToolBar) размещёно несколько компонент:
dtList (TDateTimePicker), cbVehicle (TComboBox) и др.

cbVehicle.Items заполняется данными в Run Time (выполняется хранимая процедура). После этого устанавливается cbVehicle.ItemIndex := 0;
Плохо то, что cbVehicle выделяет текущие данные, как будто он имеет фокус ввода. Стиль cbVehicle.Style := csDropDown;
Если пройтись клавишей Tab по всем компонентам, выделение у cbVehicle сбрасывается, и дальше компонент работает как положено.
Никак не получается установить cbVehicle.ItemIndex <> -1; и сбросить выделение.
ClearSelection и DeleteSelected устанавливают cbVehicle.ItemIndex в значение -1.


 
KilkennyCat ©   (2005-01-20 06:34) [1]

может, проще убрать у него фокус ввода? Раз после табпробега работает как надо...


 
guest00   (2005-01-20 08:58) [2]

KilkennyCat !
Он не имеет фокуса ввода, но текст выделен.
Это сбивает меня и пользователей с правильного пути.


 
Alcogol   (2005-01-20 09:28) [3]

может сделать setfocus другому компоненту.
(по-моему это тоже самое что и Tab).


 
geust00   (2005-01-20 09:59) [4]

фокуса ввода cbVehicle не имеет, а вот если установить
cbVehicle.Style := csDropDownList; то выделение пропадает, - то, что надо. Но это не решение. Я устанавливал фокус ввода другому компоненту dtList (TDateTimePicker), не помогло, конечно.
Этот comboBox всего-то не сбрасывает выделение.


 
KilkennyCat ©   (2005-01-20 10:33) [5]

Попробовал воспроизвести ситуацию. Изначально установил TabOrder = 0 другому элементу. Никаких выделений при любых изменениях. Седьмая Делфи, вин2000.


 
guest00   (2005-01-20 11:37) [6]

сейчас принесу текст.


 
guest00   (2005-01-20 12:07) [7]

Ситуация такова.

в главной форме
type
 TForm1 = class(TForm)
 ...
 public
   waylist1: TWaylistType1;
 ...
 end

есть TWaylistType1 - тоже форма, но с двумя конструкторами
type
 TWaylistType1 = class(TForm)
 ...
 public
   constructor Create(AOwner: TComponent); overload; override;
   constructor Create(AOwner: TComponent; AParent:TWinControl);  reintroduce; overload;
 ...
 end

В данном случае вызывается конструктор

 waylist1 := TWaylistType1.Create(self, TabSheet1);

Этот код выполняется в конструкторе главной формы TForm1.

"неправильный" компонент cbVehicle расположен
на форме waylist1: TWaylistType1; и заполняется не в конструкторе формы TWaylistType1; а при установке её свойства ADOConn: TADOConnection.

В конструкторе главной формы читается ini - файл. Если в нём указан пароль, в конструкторе (в последних строках) выполняется попытка соединения с БД, т.е. устанавливается свойство waylist1.ADOConn: TADOConnection и заполняется этот cbVehicle.
(это случай 1)

Если пароль не указан, соединение с БД не выполняется, cbVehicle не заполняется. Соединение устанавливается пользователем активизацией соответствующих процедур.
(это случай 2)

В случае 2 всё [ok]. В случае 1 и возникает неожиданная ситуация.
Т. е. в том случае, когда заполнение comboBox происходит в конструкторе главной формы.



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.01.30;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.033 c
14-1105343619
Grant
2005-01-10 10:53
2005.01.30
Inet


6-1099922658
Ivolg
2004-11-08 17:04
2005.01.30
Net Send


14-1105276978
Vasya.ru
2005-01-09 16:22
2005.01.30
сканирование порта


8-1097935584
Yegorchic
2004-10-16 18:06
2005.01.30
Загрузка .3ds


8-1097955490
Keen
2004-10-16 23:38
2005.01.30
Сохрануние картинки из видеопотока нестандартного формата





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский