![]() |
|
#1
|
|||
|
|||
![]() Для участия а конкурсе на замещение вакантной должности сотрудника фирмы желающие подают следующую информацию:
Ф.И.О., год рождения, образование (среднее, специальное, высшее), знание иностранных языков (английский, немецкий, французский, владею свободно, читаю и перевожу со словарем), владение компьютером (MSDOS, Windows), стаж работы, наличие рекомендаций. Вывести список претендентов в соответствии с требованиями руководства фирмы ![]() требования предполагаю .........ннадо вначале оговаривать...т.е. предлагать пользователю их выбрать...типа критерий отбора)))))))) Последний раз редактировалось kate_miss, 21.08.2010 в 00:23. |
#2
|
||||
|
||||
![]() Что-то я не понял, а что вы собственно хотите? Картинка эта взята из рабочей программы или вы так видите решение?
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#3
|
|||
|
|||
![]() Я так полагаю, нужна форма поиска и собственно процедура поиска. при том, что информация на самом деле хранится в виде зеписей в типизированном файле.
Ну. собственно, делаем критерии, можно в таком-же виде, как и форма ввода, только к каждому критерию прицепляем еще CheckBox - включать его в приск или нет. Далее последовательно считываем записи из файла и проверяем по выбранным пользователем критериям. Результат, в виде списка или файла, вываливаем пользователю. Работы максимум на час-полтора (форму дольше рисовать, чем код писать). |
#4
|
|||
|
|||
![]() форма это мое видение решения.....вот только куда критерии вставить еще не нашла.......))))))))
![]() |
#5
|
||||
|
||||
![]() Вместо названий группбоксов положите на то-же место чекбоксы с названием.
Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#6
|
|||
|
|||
![]() ***************код****************
Код:
type TSotrydnik= record fio:string[15]; god:integer; obr:string[15]; inyaz:string[15]; stepen:string[10]; komp:string[10]; stazh:integer; recom:string[10]; end; var Form1: TForm1; Mass:array [1..300] of TSotrydnik; masscnt:integer; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin BitBtn2.Hide; masscnt:=0; end; procedure TForm1.BitBtn2Click(Sender: TObject); begin //Memo1.Lines.Add('-------ФИО-------Год рождения-------Образование-------Ин.яз-------Владение-------Знание ПК-------Стаж-------Рекомендации'); //Memo1.Lines.Add('------------------------------------------------------------------------------------------------------------------------'); masscnt:=masscnt+1; Mass[masscnt].fio:=Edit1.Text; Mass[masscnt].god:=StrToInt(Edit2.Text); Mass[masscnt].obr:=Edit3.Text; Mass[masscnt].inyaz:=Edit4.Text; Mass[masscnt].stepen:=Edit5.Text; Mass[masscnt].komp:=Edit6.Text; Mass[masscnt].stazh:=StrToInt(Edit7.Text); Mass[masscnt].recom:=Edit8.Text; Memo1.Lines.Add(Mass[masscnt].fio+' '+IntToStr(Mass[masscnt].god)+' '+Mass[masscnt].obr+' '+ Mass[masscnt].inyaz+' '+Mass[masscnt].stepen+' '+Mass[masscnt].komp+' '+IntToStr(Mass[masscnt].stazh)+' '+Mass[masscnt].recom); Edit1.Text := ''; Edit2.Text := ''; Edit3.Text := ''; Edit4.Text := ''; Edit5.Text := ''; Edit6.Text := ''; Edit7.Text := ''; Edit8.Text := ''; Edit1.SetFocus; end; procedure TForm1.BitBtn4Click(Sender: TObject); var f:FILE of TSotrydnik; begin if OpenDialog1.Execute then begin masscnt:=0; AssignFile(f,OpenDialog1.FileName); Reset(f); while not eof(f) do begin masscnt:=masscnt+1; Read(f,Mass[masscnt]); end; CloseFile(f); end; end; procedure TForm1.BitBtn1Click(Sender: TObject); var f:FILE of TSotrydnik; begin Form1.Close; //CloseFile(f); end; procedure TForm1.BitBtn3Click(Sender: TObject); var i:integer; f:FILE of TSotrydnik; begin if SaveDialog1.Execute then begin AssignFile(f,SaveDialog1.FileName); Rewrite(f); for i:=1 to masscnt do write(f,Mass[i]); CloseFile(f); end; end; procedure TForm1.BitBtn5Click(Sender: TObject); var f:FILE of TSotrydnik; begin //OpenDialog1.Title := 'Создать новый файл'; if OpenDialog1.Execute then begin AssignFile(f,OpenDialog1.FileName); Rewrite(f); BitBtn2.Show; //Сделать видимой кнопку "Ввести запись" end; {var i:integer; begin Memo1.Lines.Add('-------ФИО-------Год рождения-------Образование-------Ин.яз-------Владение-------Знание ПК-------Стаж-------Рекомендации'); for i:=1 to Masscnt do begin Memo1.Lines.Add(Mass[i].fio+' '+IntToStr(Mass[i].god)+' '+Mass[i].obr+' '+ Mass[i].inyaz+' '+Mass[i].stepen+' '+Mass[i].komp+' '+IntToStr(Mass[i].stazh)+' '+Mass[i].recom); end; end;} end; end. ВОТ ЧТО У МЕНЯ ПОКА ПОЛУЧИЛОСЬ.......только вот что-то открытие не работает ------ вернее в memo данные не отображаются(((((((( и вот эти критерии.....в заданиии так не ясно...что я даже не понимаю как их сделать.....!!!!!!!! help me))))) и еще помогите сделать красивый вывод данных в memo.......не получается..все как то в разброс)))))) |
#7
|
|||
|
|||
![]() Для того, что бы в Memo вывелось красиво, надо установить в нем моноширинный шрифт (например, courier new). Ну и ширину полей посчитать.
|
#8
|
||||
|
||||
![]() kate_miss можеттебе лутче использовать richedit тогда ище красивее будет)))
и в твоем случае лутче использовать динамический масив таки красивей будет и потребность в masscnt отпадет. в мемо ниче не выводится при открытии так как ты ничего туда и не выводишь))) Не твори зла, и жизнь повернется к тебе передом ![]() Последний раз редактировалось Bars1992, 22.08.2010 в 20:21. |
#9
|
|||
|
|||
![]() Цитата:
подскажите пожалуйста как использовать richedit...просто я заменила на него ....выводит также......а как что задать незнаю(((((((( |
#10
|
||||
|
||||
![]() одинм из главных войств рич едита это SelAttributes, то-есть в нем можно выставлять цвет, высоту, жырность текста. Если вы изменили SelAttributes рич едита, то ети атрибуты будут применятся только к тексту который будет набраный или вставленый дальше. Детальней про этот компонент можно прочитать здесь. поексперементируйте в каком нибудь левом проекте. я думаю вы быстро вникните.
Не твори зла, и жизнь повернется к тебе передом ![]() |
#11
|
||||
|
||||
![]() Может так Записи и файлы.rar
|