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

Вниз

Два ComboBox a один Items.   Найти похожие ветки 

 
Leshiy   (2003-02-01 10:45) [0]

Здравствуйте Мастаки.
Существует, скажем, 2 ComboBox"a. Можно ли сделать (через указатели или еще как-нибудь) чтобы свойства Items первого и второго имели доступ к одному и тому-же списку строк.


 
Song   (2003-02-01 15:27) [1]

ComboBox1.Items.Assign(ComboBox2.Items)


 
Darkwin   (2003-02-01 17:46) [2]

Чтобы был один списо на двоих - только через указатели, но как то странно они себя ведут после этого...
В одном список отображается а в другом нет, хотя у второго итемс не тот же что и упервого, почему не понятно ???
procedure TForm1.FormCreate(Sender: TObject);
var
p1,p2:Pointer;
begin
p1:=@(ComboBox1.Items);
p2:=@(ComboBox2.Items);
old:=p2;
TStrings(p2^):=TStrings(p1^);
ComboBox1.Items.Add("1");
ComboBox2.Items.Add("2");
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Lines.AddStrings(ComboBox1.Items);
Memo1.Lines.Add("");
Memo1.Lines.AddStrings(ComboBox2.Items);
end;


 
Darkwin   (2003-02-01 17:47) [3]

сорри,

> В одном список отображается а в другом нет, хотя у второго
> итемс не тот же что и упервого, почему не понятно ???

В одном список отображается а в другом нет, хотя у второго итемс тот же что и упервого, почему не понятно ???



 
Leshiy   (2003-02-03 07:43) [4]


Song © (01.02.03 15:27)
Assign не пойдет, так как он просто копирует Items"ы одного в другой.

Darkwin © (01.02.03 17:46)
Странно. Когда открываешь второй ComboBox - то заметно что количество Items"ов как у первого, вот только значений не видно. :(


 
AlexSV   (2003-02-03 11:09) [5]

А не проще ли ComboBox1.Items := ComboBox2.Items ?


 
Leshiy   (2003-02-03 11:34) [6]

AlexSV © (03.02.03 11:09)
Не пойдет, т.к. так-же как и assign - просто копирует из одного в другой.


 
Игорь Шевченко   (2003-02-03 11:46) [7]

А еще вопрос - зачем нужна такая задача ?


 
Юрий Федоров   (2003-02-03 12:06) [8]

Похоже что никак не сделаешь
CB_ADDSTRING создает себе копию, например.
Да и действительно зачем???


 
Leshiy   (2003-02-03 12:07) [9]

Игорь Шевченко © (03.02.03 11:46)
Скажем, существует 3 ComboBox"а и 3 PickList"а, их содержимое обсолютно одинаково. Причем их заполнение происходит в run-time, помимо этого эти списки могут изменяться .
1. Зачем заполнять все ComboBox"ы одним и тем же, т.е. экономия ресурсов.
2. При изменении списка не надо копировать из одного во все другие (Assign, ..Items:=..Items, и т.д., и т.п.).


 
Толик   (2003-02-03 12:22) [10]

Блин, народ, а руками рисовать не пробовали??? Один обработчик OnDrawItem на все ComboBox"ы и будет Вам счастье.
p.s.
Только Item"ы надо брать из своего, руками созданного списка


 
Leshiy   (2003-02-03 12:29) [11]

Толик © (03.02.03 12:22)
Спасибо, попробую.

Кстати, пример Darkwin"а работает, только однобоко. Т.е. при изменении ComboBox1 или ComboBox2 изменения отображаются только в ComboBox1.


 
Игорь Шевченко   (2003-02-03 12:34) [12]

Leshiy © (03.02.03 12:07)

> т.е. экономия ресурсов


В Recycle Bin такую экономию ресурсов и лишение премии, сразу.


 
Leshiy   (2003-02-03 12:38) [13]

Игорь Шевченко © (03.02.03 12:34)
?????


 
Darkwin   (2003-02-03 15:08) [14]


> Кстати, пример Darkwin"а работает, только однобоко. Т.е.
> при изменении ComboBox1 или ComboBox2 изменения отображаются
> только в ComboBox1.


Вот и я о том же... Но если вывести в Мемо итемсы из первого и второго Комбобоксов, то они будут совешенно одинаковые. Но, почему эти данные не отображаются во втором, я понять не могу.



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

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

Наверх




Память: 0.47 MB
Время: 0.009 c
1-38280
anaTolik
2003-02-05 17:58
2003.02.13
MSSQL->DBGrid->CheckBox


14-38471
Jakommo
2003-01-29 12:58
2003.02.13
Свой Shell как средство предохранения от юзверей.


3-38077
andy11
2003-01-27 13:31
2003.02.13
DBGrid & MouseWheel


1-38245
bnn
2003-02-05 10:04
2003.02.13
Конвертор DMF файлов


1-38382
Vitus
2003-02-03 18:46
2003.02.13
Как программно сделать элемент в TreeView выбранным?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский