Жоспар №5898

Delphi 7-те деректер қорымен жұмыс істеу және жылжымайтын мүлікке арналған қолданбалы пакет әзірлеу

Сұрақ-жауап

Сұрағыңызға жасанды интеллект жауап береді

МАЗМҰНЫ КІРІСПЕ 3 1 DELPHI-ДЕ ДЕРЕКТЕР ҚОРЫМЕН ЖҰМЫС ІСТЕУ 4 1.1 Мәліметтер қорының негізгі ұғымдары 4 1.2 Деректер қорын құру 7 1.3 Бүркеншік ат құру 8 1.4 Кесте құру 10 1.5 Деректер қорын (кесте) құру 14 1.6 Деректер қорын қарау 15 2 «ЖЫЛЖЫМАЙТЫН МҮЛІК» ҚОЛДАНБАЛЫ ПРОГРАММАЛЫҚ ПАКЕТІ 24 2.1 Мәліметтерге қойылатын талаптар 24 2.2 Транзакцияларға қойылатын талаптар 24 2.3 Берілгендерге сұраныс қойып өңдеу. 24 ҚОРЫТЫНДЫ 28 ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР 29 ҚОСЫМША А 30 ҚОСЫМША В 37 КІРІСПЕ Қазіргі таңда техника мен технологияның қарқынды дамуына байланысты Диссертациялық зерттеудің мақсаты жылжымайтын мүлікпен айналысатын мекемелер деректер Бағдарлама Delphi программалау тілінде құрылуы тиіс. Жылжымайтын 1 DELPHI-ДЕ ДЕРЕКТЕР ҚОРЫМЕН ЖҰМЫС ІСТЕУ 1.1 Мәліметтер қорының негізгі ұғымдары ЭЕМ (электронды есептегіш машиналардың) маңызды ерекшеліктерінің бірі Мәліметтер базасы (МБ) - белгілі бір арнаулы ауқымға Қарапайым МБ мысалы ретінде телефон анықғамалығын, поездар қозғалысы Электронды МБ-сының басты қасиеті - ақпаратты тез іздестіру Мәліметтер базасын басқару теориясы дербес пән ретінде шамамен Объект деп мағлүматтары Атрибут - объектінің қасиеттерін ақпараттың бейнелеу. Әрбір объект Мәлметіпердің басты элементі деп мәлметтердің баска элементтерінің мәндерін Алғашқы кілт - объектінің (жазбаның) әрбір данасын біреғей МББЖ - жаңа база құрылымын құруға арналған программаның Кез келген МББЖ мәліметтермен төрт қарапайым операция орындауға ■ кестеге бір немесе бірнеше жазбаны қосу; ■ кестеден бір немесе бірнеше жазбаны жою; ■ кейбір өрістердің бір немесе бірнеше жазбаларындағы мәндерді ■ берілген шартты қанағаттандыратын бір немесе бірнеше жазбаларды МББЖ-ның тағы бір функңиясы - мәліметтерді басқару. Мәліметтерді Деректер қоры деп ақпаратпен қамтамасыз ететін бағдарламаны айтады. Жалпы алғанда деректер қоры дегеніміз - файлдар жиыны. Қазіргі кезде деректер қоры жергілікті (dBase, FoxPro, Access, Delphi құрамында dBase, Infomix және Oracle деректер файлдарымен Жергілікті деректер қоры бір құралда тұрады. Құрал ретінде Бірнеше қолданушы арасында деректерді бөлуді қамтамасыз ету үшін Деректердің қашықтық қоры басқа компьютерде тұрады (қашықтық компьютер Онымен жұмыс екі бөліктен тұрады: тұтынғыш (клиенттік) және Серверлік қашықтық компьютерде жұмысты қамтамасыз ететін бағдарлама бөлігі. Сұраулар SQL (құрылымды сұрау) тілінде берілетін әмірлер. Қашықтық сервер бағдарламасы бірмезетте бірнеше қолданушыны қамтамасыз ете Бірізді амалдар - бұл деректер берілместен бұрын міндетті Қағазда деректер кесте түрінде беріледі. Кестенің әр жолы Әр кесте жеке файлда сақталады. Бірақ деректер қоры Деректер қорымен жұмыс істейтін бағдарламаның ақпарат көзі барлық Деректер қоры С:, D: дискі каталоггерінде немесе желілік Деректер қорымен жұмысты қамтамасыз ететін, бағдарлама Borland Database 1.2 Деректер қорын құру Жоғарыда келтірілген мысалдарда Delphi 7 құрамындағы дайын кестелер Деректер қоры бірнеше кестеден тұрады және олар бір Деректер қоры бүркеншік ат арқылы алынатындықтан, деректердің жаңа Деректер қорын құру кезінде мына әрекеттер орындалуға тиісті: Каталог құру. Бүркеншік атау құру. Кесте құру. Каталог құру Деректер қоры файлдары үшін каталог (қалта) әдеттегідей, мысалы, 1.3 Бүркеншік ат құру Деректер қорының бүркеншік атауы BDE Administrator бағдарламасымен құрылады. Cурет 2.1 – BDE Administrator сұхбат терезесінің түрі Терезенің сол жағында Databases тіркемеде, осы компьютерде тіркелген, Бүркеншік ат құрған кезде әдетте STANDARD драйвері ұсынылады. Cурет 2.2 – Жаңа бүркеншікті тіркеу Бүркеншік атты өзгертуге, деректер қоры файлының жолын көрсетуге 1.4 Кесте құру Кесте құрған кезде, мысалы жай тізім құрған кезде, Жазба өрістері анықталған соң, кестеде өрістерді орналастыру кажет. Ескертпе. Бірнеше деректер қорынан тұратын бір бірімен байланысты Деректер қорының жазбалар құрылымы анықталған соң, кесте құруға 1. Жаңа есте құру үшін Tools|Database Desktop әмірін 2. File|New|Tabte алыңыз. Ашылған Create Table сұхбат терезеде Нәтижесінде Create Paradox 7 Table терезесі (2.3-сурет) шығады. Cурет 2.3 – Create Paradox 7 Table сұхбат Кестенің әр өрісі үшін атау мен түр, егер Кесте 1 - Өріс түрі ақпарат түрін анықтайды Түрі Тұрақты Өріс мәні Alpha A Нышандар жолы. Size - жол ұзындағы Number N 15 мәнді аралықта жатқан цифрлар Money $ Ақша пішіміндегі сан. Сандар разряд тобының Short S -32767, 32767 аралықтағы бүтін сан Long Integer I -2 147 483 648, 2 Date D Дата Time T Миллисекундпен берілген, түн ортасынан басталған уақыт Memo M Кез келген ұзындықты нышандар жолы. Мұнда Timestamp @ Уақыт пен дата Formatted Memo F Нышандар жолы. Қаріп түрі мен Graphic G Сурет, графика. Logical L Шын (true) және өтірік (false) мәндері Auto-Increment + Бүтін сан. Кестеге кезекті жазбаны қосқан Bytes Y Екілікті деректер. Мұндай өрістер Database Desktop Binary В Екілік деректер. Мұндай өрістер Database Desktop 1.5 Деректер қорын (кесте) құру Деректер қорын құру Database, Table, Query. DataSource құраластарымен Database құраласы деректер қорын тұтас, яғни кестелер жинағы Егер деректер қоры бір кестеден тұрса, деректермен жұмыс Кесте 2 – Table құраласы сипаттары Сипаттары: Анықтайды: Name Құралас аты DatabaseName Дерек қорының аты (дерек файлы), оны алуға TableName Деректер файлының аты, оны алу үшін құралас TableТуре Кесте түрі. Кесте Paradox (tt Paradox), dBase Active Кестені белсенді ету белгісі. Нәтижесінде сипатқа true Бағдарлама пішінін жасау кезінде DatabaseName мен TableName сипаттарының DataSource құраласының Name, DataSet сипаттары бар. DataSet арқылы Table құраласының сипаттары: Name – Таble1, DatabaseName - DataSource құраласының сипаттары: Name - DataSourcel, DataSet – 1.6 Деректер қорын қарау Деректер қорын пішін күйінде немесе кесте күйінде қарауға Пішін күйі Пішін күйінде деректер қорын қарау үшін, әр өріс Name - құралас аты. Құралас сипаттарын алу үшін Data Source - деректердің негізгі құраласы. DataField - бейнелеу немесе өңдеуге құраласты қолданатын, деректер DBEdit мен DBMemo құраластарының қолданылу мысалы ретінде "Балықтар" Пішін былайша құрылады. Әуелі бос формаға Table, DataSource DBEdit1- DBEdit5 және DBMemo құраластарының сипаттары: Барлық құралас Table құраласының Active сипатына true берілгендіктен, DataField сипатына Деректер қорының өрісін өңдеу-қарау құраластарынан басқа, пішінге DBImage Деректер файлының жазбаларын қарау үшін, пішінге DBNavigator құраласы Енді бағдарлама құрастырмасын қоссақ, бейнебетте оның пішіні шығады. Кесте режимі.Жоғарыда айтылған "Балықтар" деректер қорында бағдарлама пішіні Кесте күйінде деректер қорын қарауды қамтамасыз ететін бағдарлама Деректер қоры "Мектеп" (Бүркеншік аты Мектеп) Mektep.db файлында Ескертпе. Мектеп бүркеншік аты BDE Administrator арқылы құрылады, Әуелі әзірленетін бағдарлама түріне Table мен DataSource құраласын Table1DatabaseName - Мектеп Table1.TableName - Mektep.db Table1.Active - true DataSource1.Dataset - Table1 Кесте күйінде деректерді қарау мен өңдеуді қамтамасыз ету Dbgrid сипаттары: Name- Құралас аты DataSource - Деректер кестесінде бейнеленетін негіз Columns - Кестеде бейнеленетін ақпаратты Options.dgTitle - Бағандар тақырыбы жолын шығарады Options.dglndicator - Индикатор бағаннан шығарады. Деректер қорымен жұмыс Options.dgColumnResize - Бағдарлама жұмысы кезінде кесте бағаны енін Options.dgColL.ines - Кесте бағанын бөлетін сызықты шығаруға рұқсат Options.dgRowLines -Кесте жолын бөлетін сызықты шығаруға рұқсат етеді Бағдарлама жұмысы кезінде кестеде қандай ақпарат бейнеленетінін білу Column құраласының сипаттары FieldName - мәні бағанға шығарылатын жазба өрісі Width - пикселмен берілген баған ені Font –баған ұяшасында мәтінді шығаратын қаріп Color - Баған өңінің түсі Alignment - Баған ұяшасында мәтінді теңестіру әдісі. Мәтін Title.Caption - Баған тақырыбы. Әдеттегі мән жазба өрісінің Title.Color - Баған тақырыбы өңінің түсі Title. Font- Баған тақырыбының қаріпі Әдетте әр баған үшін жазба өрісінің аты FieldName Dbgrid құраласының сипаттарының мәні Құралас FieldName Title.Caption DBGrid1.Columns[0] fam Фамилия DBGrid1.Columns[1] Name Имя DBGrid1.Coiumns[2] Ciass Класс DBGrid1.Columns[3] Adr Адрес, телефон Енді нысанға DBNavigator құраласын қосамыз. Бұл құраластың DataSource Енді бағдарламаны құрастыруға қосып көріңіз. Мынаған назар аударыңыз: Кесте түріндегі деректер қорының жұмысы, Microsotf Excel электрондық Деректер қорынан ақпаратты алу Қолданушыға деректер қорымен жұмыс істегенде, әдетте оның барлығы Деректерді басқару базаларының көптеген жүйелері керекті ақпаратты сұрауды Кейбір шарттарды қанағаттандыратын жазбаны қарау үшін, Query құраласы Сұрау SQL сипатына сұрауды жазу үшін нысанды әзірлеу SQL сипаты жол тізімі болып табылады. Сондықтан бағдарлама Төменде нақты адам турасында ақпаратты іздеуге сұрау құратын Деректер қорын қарау мен сұрауды орындауға DBGrid1 құраласы Tform.Button1 Click процедурасы Сұрақ тетігіне нұқумен қосылады. Ол SQL-сұрауы өзгeртілер алдында Close әдісімен жабылуға тиісті (бұл Tform.Button2Click процедурасы Барлық жазбалар тетігіне шертумен қосылады. Ол Егер сұрау бағдарлама пішінін әзірлеу кезінде сұрау SQL Мысалы, сұрау үшін Select Distinst fam, Name, Class From ':Meктen:Mektep.db' Where (Class ='10a') Order By Name, fam Сұрау шартын ауыстыру нұсқауы былай болуы мумкін: Form1.Ouery1.SQL[3] := '(fam="' + fam'")' SQL сипаты жолдар нөлден бастап нөмірленетін, түрі Tstring Динамикалық құрылатын бүркеншік аттар Деректер қорын тандауға бүркеншік атты қолдану, жүйеге деректерді Бұл айтылғандардың мысалы ретінде "Мектеп" деректер қоры жұмысы Бағдарламаның осы үлгісінде деректер қоры бағдарламаның орындалатын файлы Деректер қорын басқаратын бағдарламаны басқа компьютерге көшіру Құрылған деректер қорын басқаратын бағдарламаны басқа компьютерге кою BDE деректер қорымен жұмысты қамтамасыз ететін, драйверлер мен ВDЕ бағдарламаны қолмен қоюға тырысып көруге болады. Төменде • BLW32.DLL • IDAPI32.DLL • IDBAT32.DLL • IDPDX32.DLL • IDR20009.DLL • USA.BLL • CHARSET.BLL Бұл файлдарды қолданушы компьютеріне қою керек, сосын Windows • Бөлім HKEY_LOCAL_MACHINE\Software\Borland\Database engine - параметр • DLLPATH BDE DLL-файлдарына жолы болуға тиісті • HKEY_LOCAL_MACHINESoftware\Borland\BLW32 -параметр • BLAPIPATH BDE BLL-файлдарына жолы болуға тиісті 2 «ЖЫЛЖЫМАЙТЫН МҮЛІК» ҚОЛДАНБАЛЫ ПРОГРАММАЛЫҚ ПАКЕТІ 2.1 Мәліметтерге қойылатын талаптар Realty бөлімі клиенттерге жалға берілетін, сатылатын объекттілерін ұсынады. 2.2 Транзакцияларға қойылатын талаптар Мәліметтер енгізу. Жалға берілетін, сатылатын пәтер туралы мәлімет Мәліметтерді жаңарту. Ескі мәліметтерді өшіріп, жаңа мәліметтерді енгізу. 2.3 Берілгендерге сұраныс қойып өңдеу. Транзакция А. Карағанды қаласында орналасқан құны 25000 тенгеден Транзакция В. 3 бөлмелі Язева көшесінде Программа құру барысында жасаған операцияларымды мұқият тексеру үшін procedure TForm1.Button3Click(Sender: TObject); var index,i:integer; F: TextFile; S: string; begin if OpenDialog1.Execute then begin AssignFile(F, OpenDialog1.FileName); { File selected in dialog } Reset(F); Datasource3.DataSet.Append; while not Eof(F) do begin Datasource3.DataSet.Append; for i:=0 to 10 do begin Readln(F, S); if (i=0) or (i=3)or (i=4)or (i=8) then Datasource3.DataSet.Fields.Fields[i].AsInteger:=strtoint(S) else Datasource3.DataSet.Fields.Fields[i].AsString:=S; end; end; CloseFile(F); end; end; Одан кейін пәтерлерді жалға беру, сатуға байланысты сұраныс procedure TForm1.Button2Click(Sender: TObject); begin dbgrid2.Visible:=true; dbgrid2.Height:=200; dbgrid2.Left:=groupbox1.Left; dbgrid2.Top:=groupbox1.Top+groupbox1.Height; dbgrid2.Height:=dbgrid1.Height; dbgrid2.Width:=dbgrid1.Width; dbgrid1.Visible:=false; Query1.Active := false; Query1.SQL.clear; if (edit3.Text='')and (edit4.Text='') then begin edit3.Text:=inttostr(0); edit4.Text:=inttostr(1000000);end; if (edit6.Text='')and(combobox6.Text='')and(combobox7.Text='')and(combobox8.Text='')and(combobox9.Text='')and(combobox10.Text='') then Query1.SQL.Add(' select * from vrsdayu1') else if combobox6.Text'' then Query1.SQL.Add(' select * from vrsdayu1 where (price between else Query1.SQL.Add(' select * from vrsdayu1 where (price between Query1.Active := true; n1.Enabled:=true; end; procedure TForm1.Button1Click(Sender: TObject); begin dbgrid2.Visible:=true; dbgrid2.Left:=groupbox2.Left; dbgrid2.Top:=groupbox2.Top+groupbox2.Height; dbgrid2.Height:=dbgrid1.Height; dbgrid2.Width:=dbgrid1.Width; dbgrid1.Visible:=false; Query1.Active := false; Query1.SQL.clear; if (edit3.Text='')and (edit4.Text='') then begin edit1.Text:=inttostr(0); edit2.Text:=inttostr(1000000);end; if (edit5.Text='')and(combobox1.Text='')and(combobox2.Text='')and(edit7.Text='')then Query1.SQL.Add(' select * from vrprodayu1') else if combobox1.Text'' then Query1.SQL.Add(' select * from vrprodayu1 where (price between else Query1.SQL.Add(' select * from vrprodayu1 where (price between Query1.Active := true; n1.Enabled:=true; end; ҚОРЫТЫНДЫ Информатизацияның даму тарихы АҚШ-та 60-ж.ж.-дан басталып, сонан соң ҚОЛДАНЫЛҒАН ӘДЕБИЕТТЕР Матаев С. Delphi 7 Бағдарлама құру негіздері: Оқу Кеңеспаев І.К. Қазақ тілінің түсіндірме сөздігі. Ожегова С.И., Шведова Н.Ю. Толковый словарь русского языка. Акулов Н. DelphiWorld Холмогоров В. Основы программирования в Delphi 7. Учебный Фаронов В.И. Основы программирования в Delphi 7.-М.: Изд-во Холмогоров В. Создание базы данных. Учебный курс – Михаил Фленов. Delphi искусство программирования. Санкт-Петербург «БХВ-Петербург», 2006 Гофман В.Е., Хомоненко А.Д. Delphi: экспресс курс. – Фаронов В.В. Программирование баз данных в Delphi7. Учебный Гончаров А. Самоучитель Delphi. – СПб: Питер, 2000. Матросов А.В., Сергеев А.О., Чаунин М. Программирование баз Соловьева А. Сетевые технологии. Учебник-практикум. – СПб.:БХВ – Глушаков С.В. Программирование в Delphi. / С.В. Глушаков, Леонтьев Б.К. Web-дизайн: Руководство пользователя – М.: Позновательная ҚОСЫМША А \\ жалға берілетін және сатылатын пәтерлерге сұраныс procedure TForm1.N5Click(Sender: TObject); begin GroupBox1.Visible:=true; GroupBox2.Visible:=false; dbgrid1.Visible:=false; dbgrid2.Visible:=false; //form1.Color:=clSkyBlue; N1.Enabled:=false; end; procedure TForm1.N6Click(Sender: TObject); begin GroupBox2.Visible:=true; //form1.Color:=clMoneyGreen; GroupBox1.Visible:=false; dbgrid1.Visible:=false; dbgrid2.Visible:=false; N1.Enabled:=false; end; procedure TForm1.Button2Click(Sender: TObject); begin dbgrid2.Visible:=true; dbgrid2.Height:=200; dbgrid2.Left:=groupbox1.Left; dbgrid2.Top:=groupbox1.Top+groupbox1.Height; dbgrid2.Height:=dbgrid1.Height; dbgrid2.Width:=dbgrid1.Width; dbgrid1.Visible:=false; //dbgrid2.Visible:=false; Query1.Active := false; Query1.SQL.clear; if (edit3.Text='')and (edit4.Text='') then begin edit3.Text:=inttostr(0); edit4.Text:=inttostr(1000000);end; if (edit6.Text='')and(combobox6.Text='')and(combobox7.Text='')and(combobox8.Text='')and(combobox9.Text='')and(combobox10.Text='') then Query1.SQL.Add(' select * from vrsdayu1') else if combobox6.Text'' then Query1.SQL.Add(' select * from vrsdayu1 where (price between else Query1.SQL.Add(' select * from vrsdayu1 where (price between Query1.Active := true; n1.Enabled:=true; end; procedure TForm1.Button1Click(Sender: TObject); begin dbgrid2.Visible:=true; dbgrid2.Left:=groupbox2.Left; dbgrid2.Top:=groupbox2.Top+groupbox2.Height; dbgrid2.Height:=dbgrid1.Height; dbgrid2.Width:=dbgrid1.Width; dbgrid1.Visible:=false; Query1.Active := false; Query1.SQL.clear; if (edit1.Text='')and (edit2.Text='') then begin edit1.Text:=inttostr(0); edit2.Text:=inttostr(1000000);end; if (edit5.Text='')and(combobox1.Text='')and(combobox2.Text='')and(edit7.Text='')then Query1.SQL.Add(' select * from vrprodayu1') else if combobox1.Text'' then Query1.SQL.Add(' select * from vrprodayu1 where (price between else Query1.SQL.Add(' select * from vrprodayu1 where (price between Query1.Active := true; n1.Enabled:=true; end; procedure TForm1.Button3Click(Sender: TObject); var index,i:integer; XLApp, Sheet, Colum:Variant; F: TextFile; S: string; begin //index:=2; if OpenDialog1.Execute then begin AssignFile(F, OpenDialog1.FileName); { File selected in dialog } Reset(F); Datasource3.DataSet.Append; while not Eof(F) do begin Datasource3.DataSet.Append; for i:=0 to 10 do begin Readln(F, S); if (i=0) or (i=3)or (i=4)or (i=8) then Datasource3.DataSet.Fields.Fields[i].AsInteger:=strtoint(S) else Datasource3.DataSet.Fields.Fields[i].AsString:=S; end; end; CloseFile(F); end; //New_record.DBNavigator1.BtnClick(nbPost); end; procedure TForm1.N2Click(Sender: TObject); begin with New_record do begin caption:='Ввод данных'; if form1.GroupBox1.Visible=true then begin panel1.Visible:=true; panel2.Visible:=false; Datasource1.DataSet.Append; DBNavigator1.BtnClick(nbInsert); end else begin panel2.Visible:=true; panel1.Visible:=false; Datasource3.DataSet.Append; DBNavigator2.BtnClick(nbInsert); end; ShowModal; end; new_record.button3.Enabled:=true; new_record.button5.Enabled:=true; end; procedure TForm1.N7Click(Sender: TObject); begin with New_record do begin Caption:='Редактировать запись'; if form1.GroupBox1.Visible=true then begin panel1.Visible:=true; panel2.Visible:=false; Datasource1.DataSet.Edit; DBNavigator1.BtnClick(nbEdit); end else begin panel2.Visible:=true; panel1.Visible:=false; Datasource3.DataSet.Edit; DBNavigator1.BtnClick(nbEdit); end; ShowModal; end; new_record.button3.Enabled:=true; new_record.button5.Enabled:=true; end; procedure TForm1.FormCreate(Sender: TObject); begin image1.Height:=form1.Height-60; image1.Width:=form1.Width-13; image1.Top:=0; image1.Left:=0; end; procedure TForm1.N8Click(Sender: TObject); begin ShellAbout(form1.Handle, 'Курстык жумыс', 'Delphi (7.0) баѓдарламасы негізінде "Жылжымайтын мулик" колданбалы программалык '', Application.Icon.Handle); end; procedure TForm1.N9Click(Sender: TObject); begin {toolButton1.Enabled:=false; panel1.Visible:=true; toolButton2.Enabled:=true; toolButton3.Enabled:=true; // form3.Width:=640;form3.Height:=520; // form3.MediaPlayer1.Pause; with mediaplayer2 do begin open; play; end; } end; ҚОСЫМША В \\ жаңа жазба енгізу, жазбаны өңдеу procedure TNew_record.Button1Click(Sender: TObject); begin IF new_record.Caption='Ввод данных' then form1.DataSource1.DataSet.Append else form1.DataSource1.DataSet.Edit; DBNavigator1.BtnClick(nbPost); Button3.Enabled:=false; end; procedure TNew_record.Button2Click(Sender: TObject); begin IF new_record.Caption='Ввод данных' then form1.DataSource3.DataSet.Append else form1.DataSource3.DataSet.Edit; DBNavigator2.BtnClick(nbPost); Button5.Enabled:=false; end; procedure TNew_record.Button5Click(Sender: TObject); begin with DBNavigator2 do begin BtnClick(nbCancel); end; end; procedure TNew_record.Button3Click(Sender: TObject); begin with DBNavigator1 do begin BtnClick(nbCancel); end; end; procedure TNew_record.Button4Click(Sender: TObject); begin close; end; procedure TNew_record.Button6Click(Sender: TObject); begin close; end; procedure TNew_record.FormCreate(Sender: TObject); begin panel1.Width:=new_record.Width-13; panel1.Height:=new_record.Height-35; panel2.Width:=new_record.Width-13; panel2.Height:=new_record.Height-35; panel1.Top:=0; panel1.Left:=0; panel2.Top:=0; panel2.Left:=0; image1.Top:=0; image1.left:=0; image1.Width:=panel1.Width; image1.Height:=panel1.Height; image2.Top:=0; image2.left:=0; image2.Width:=panel2.Width; image2.Height:=panel2.Height; end; 3 

Мәтінді көшіру үшін белсенді жазылым қажет.

Пайдаланушы ID: 518027

Жарияланған күні: