Базалық Image және PictureBox


Білім мен білікке қойылатын талаптар: Студенттер Image  және PictureBox базалық компоненттерінің әдістерін, тағайындалуын қасиеттерін білу керек; берілген компоненттерді қойылған есептерді  шешуде қолдану білу керек.

 Image  және PictureBox базалық компоненттері. Тағайындалуы, қасиеттері, оқиғалары, тәсілдері.

Image  және PictureBox-тің базалық компоненттері пішіннің белгілі жеріне графикалық  ақпараттарды орналастыруға мүмкіндік береді (оқулық, 2.4 тақырыпты қара.)

 PictureBox элементі өте тиімді, бірақ көп орынды және өндеу уақытын алады. Олар көбіне динамикалық объектілерге сай келеді: мысал, суреттер мен белгілерді орналастырғанда.

Image элементі –статикалық ортада құрылған суреттер мен белгішелерді өзгертпеу керек болған жағдайда пайдалануға ыңғайлы.

Қасиеттері:

Enabled, Height, Left, Name, Picture,Top, Visible, Width  өздерін көбіне пішіннің балама қасиеттері сияқты көрсетеді. Бірақ та Height, Left, Top

Width  объектінің координаталары жағдайында экранның басынан бастап жылжып өзгермей пішіннің бастапқы координатасынан бастап орнын ауыстырады.

   Picture қасиеті элементте расторлық суретті (bitmap), немесе белгішені (icon) шығаруға мүмкіндік береді.

PictureBox элементі көбнесе негізгі пішіннің ішіндегі керек пішіндерге ұқсас болып келеді. Олар Image элементінде болмайтын қасиеттер қатары болады, мысалы, Font қасиеті.

Image элементінің суреттер терезесінде  Stretch (қиыстыру) болмайтын өте маңызды қасиеті бар. Алғашқы келісім бойынша  False мәніне теңеседі. Stretch қасиетінің мәні True-ға тең болса, сурет басқару элементі көлеміне жетеді.

Оқиғалар, элементтер тәсілдері:

Сипатталған басқару элементтері Click және DblClick оқиғаларына әсер етеді. Бұл оқиғаларды қарапайым  және ең кең тарағандар қатарына жатқызуға болады.

Picture қасиеті PictureBox және Image басқару элементтерінде  LoadPicture функциясын шақыру арқылы орнатылады.

Сонымен қатар, графикалық терезе Cls  және Print тәсілдерімен сүйемелдейді.

Мысалы 1. Drag & Drop  оқиғасы

Пішінге 1  Image  объектісін орнатындар және келесі әрекеттерді көрсетіңдер:

Drag Iconico, bmp, cur, gif, jpg кеңейтілулі файлдарына   жол көрсету (тышқан манипуляторы арқылы жылжытқанда  Image  объектісінде пайда болатын сурет);

Drag Mode -1 Авто;

Picture- ico, bmp, cur, gif, jpg кеңейтілулі файлдарына   жол көрсету (Image  объектісінде қозғалмаған күйде пайда болатын сурет);

Stretch- True

Код:

Private Sub Form_DragDrop(Source As Control, X As Single, Y As Single)

Image1.Left=X

Image1.Top=Y

End Sub

Бағдарлама орындалуы кезеңнің түрі.

2-мысал. Бірінші пернені басқан кезде сурет мөлшері пропорционал түрде үлкейетіндей етіп, ал екінші батырманы басқан кезде пропарционал түрде кішірейетіндей етіп бағдарлама жазу керек.

Пішінге  2 батырма және бір Image  (Picturе қасиетінде сурет файлына жол көрсетіңдер Stretch қасиетіне – True) объектісін орнату қажет.

Код:

Private Sub Command1_Click()

Үлкейтеміз

Image1.Width=Image1.Width+100

Image1.Height=image1.Height+100

End Sub

 

Private Sub Command2_Click()

Масштаб кішірейтеміз

Image1.Width=Image1Width-100

Image1.Height=image1.Height-100

End Sub

 Drag & Drop және  DragOver оқиғалары

Мысал. Суретті берілген аймаққа бір мезгілде оның өсуін көру үшін жылжытуға мүмкіндік беретін бағдарлама жазыңдар.

Қойылған есепті шығару үшін  Drag & Drop және  DragOver оқиғаларын пайдалану қажет.

Тасымалдау процесін бастау үшін, Drag & Drop  тасымалдау режиміне көшу керек. Бұл оқиғанын Source – объект орнын анықтайтын, X пен Y-тышқан көрсеткіші координаталары параметрлері бар.

Тасымалданатын объект қабылдаушы – объектіге түссе, онда оны сол жерге қалдыруға тура келеді. Бұл тышқан батырмаларын жібергеннен кейін орындалуы керек (DragOver оқиғасы).

Жазуы бар суреттерді құру үшін пішін құрайық. Алгоритмге алып бару көмегімен суретті үлкейтіп көру мүмкіндігін еңгіземіз.

Пішінге Image  18 объектіден тұратын жиымын орнатындар. Барлық Image  1 объектісіне DragMode=Auto қасиетін тағайындаңдар.

Объектілер жиымын құру үшін пішінге бір объектіні орналастыру  жеткілікті, содан кейін оны көшіріп қою қажет. Қою барысын жиым элементтерін  тарату хабарламасы шығады, барлығына «иә» деп жауап беру керек. Жиым элементтерінің барлығының атауы бірдей (name),  бірақ  индекстері әр түрлі. Индекстерді номерлеу  0-ден басталады.

Image 1(i) объектілерінің суреттері пішінді жүктеу барысында жүктейміз (біздің мысалда суреттер жұмыс үстелінде орналасқан  Пример қапшығында сақталған).

(C:\Windows\Рабочий стол \ пример \ vb.bmp”)

Бір мезгілде Tag қасиетіне Осы объектілердің атын еңгіземіз.

   Image1(0).Tag= “000”

Image 2 объектісіне Image2 терезесін сурет мөлшеріне сәйкестеңдіріп өзгертуге мүмкіндік беретін Source=False қасиетін орналасытрамыз.

Label 1 объектісіне орналастыратын суреттің атын еңгіземіз, суреттің атының ұзындығы әр түрлі болғандықтан Caption қасиетінде орналасқан мәтіннің мөлшеріне байланысты Label 1 объектісінің мөлшерін өзгертуге мүмкіндік беретін AutoSize=true  қасиетін орналастырамыз.

Суретте пішіннің  үлгісі көрсетілген.

Код:

Private Sub Form _DragDrop (Source As Control, X As Single,

Y As Single)

Sourse. Move X, Y. ‘объектінің жоғарғы бұрышын тышқан

 артына жылжытамыз

End Sub

 

Private Sub Form_ Load ()

Image1 (0). Picture = LoadPicture (“c:\Windows\ Рабочий стол  \

 пример \ лес.bmp”)

Image1 (0). Tag = “000”

Image1 (1). Picture = LoadPicture (“c:\Windows\ Рабочий стол  \

 пример \ vb.bmp”)

Image1 (1). Tag = “111”

Image1 (2). Picture = LoadPicture (“c:\Windows\ Рабочий стол  \

 пример \ Unicode.bmp”)

Image1 (2). Tag = “222”

Image1 (3). Picture = LoadPicture (“c:\Windows\ Рабочий стол  \

 пример \ Unicode1.bmp”)

Image1 (3). Tag = “333”

Image1 (4). Picture = LoadPicture (“c:\Windows\ Рабочий стол  \

 пример \ Unicode2.bmp”)

Image1 (4). Tag = “444”

Image1 (5). Picture = LoadPicture (“c:\Windows\  Рабочий стол  \

 пример  \. Unicode3.bmp”)

Image1 (5). Tag = “555”

Image1 (6). Picture = LoadPicture (“c:\Windows\ Рабочий стол  \

 пример \. Unicode4.bmp”)

Image1 (6). Tag = “666”

Image1 (7). Picture = LoadPicture (“c:\Windows\ Рабочий стол  \

 пример \. Unicode5.bmp”)

Image1 (7). Tag = “777”

End Sub

 

Private Sub Image2_ DragOver (Source As Control, X As

Single, Y As Single, State As Integer)

Image2.Picture = Source. Picture

Label1.Caption = Source. Tag

End Sub