Программирование >>  Элементы языков с и с++ 

1 ... 117 118 119 [ 120 ] 121 122 123 ... 200


обрабатывать анкетные данные клиента, данные предприятий, которые запрашивают помощь в наборе работников. И везде требуется работа со справочными данными. Например, надо выбрать из перечня должностей требуемую должность. Конечно же, такой перечень следует ввести в СотЬоВох и m него делать выборку.

Я Forml

: FillBy

2ЕЯ5

Мария Павел Ольга Дарья Анна

Загрузить файле

СотЬоВох

Вывоа

Рис. 11.67. Подключение СотЬоВох к БД Библиотека

В этом примере (по аналогии с компонентом ListBox) мы покажем, как загружать строки из текстового файла (программное формирование свойства Items), как выполнять выборку строк и засьщать выбранную строку в TextBox. Мы пойдем тем же путем, что и при работе с ListBox: создадим свою пользовательскую функцию загрузки СотЬовох из текстового файла, загрузим с ее помощью файл в СотЬоВох и сделаем выборку строк из списка, попавшего в СотЬоВох. Но т. к. мы формируем данные из файла, то соединение с источником данных надо отключить (свойство DataSource надо установить в None и удалить компоненты, сформированные в приложении при подсоединении к БД). Результат работы приложения показан на рис. 11.68, а фрагменты приложения (загрузка текста и обработчики кнопок) приведены в листинге 11.7.

Листинг 11.7

фрагмент 1: функция загрузки текста из файла void LoadFtomFile(char *File,ComboBox lb) (

char s[300] ; FILE *fp;



Срагмент 2: обработчики событий

private: System: :Void buttonl Click(System: :Object sender, Sys-I :em:: EventArgs e)

LoadFtomFile( c:\\a.txt ,this->comboBoxl);

[private: System: :Void button2 Click(System: :Object sender, Sys-ten:: EventArgs e)

this-X:iose ();

int i; i=0;

lb->Items->Clear () ; if(!(fp=fopen(File, r ))) 1

MessageBox::Show( Ошибка открытия файла , Приложение 54 , MessageBoxButtons:lOK.MessageBoxIcon::Asterisk); return;

vAiile(!feof (fp)) {

fgets(s,300,fp) ;

String dd = gcnew String(s);

/*этот способ конвертирования не удаляет последний управляющий симвсш, который надо удалить:*/

int j=dd->Length-l; dd=dd->Substring (О, j) ; lb->Items->Add (dd) ; i++;



private: System: :Void comboBoxl DropDownClosed l (System::Objectsender, System: :EventArgs e)

Выборка из списка и пересылка в TextBox if(this->comboBoxl->Selectedlndex == -1) return;

this->textBoxl->Text=this->comboBoxl->Items[this->comboBoxl->SelectedIndex] ->ToString();

3arpy3ifl-b

Фдйл в ComboBoK

Вывод

Список до загрузки из файла


Список и выборка после загрузки

Рис. 11.68. Загрузка текстового файла в СотЬоВох, выборка строки из ComboBox

и пересылка ее в TextBox

Пример 3

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

Нам надо будет в поле СотЬоВох расположить три цветных полосы: красную, желтую и зеленую, которые соответствуют высшему, среднему и низкому уровням опасности соответственно. Поэтому надо построить работу с ComboBox так, чтобы при выборе красной полосы в поле редактирования по-



1 ... 117 118 119 [ 120 ] 121 122 123 ... 200

© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика