Top Banner
1 Qt MP3 PLAYER Qt MP3 PLAYER 1.เมื่อทำกำรติดตั้งโปรแกรม Qt Creator เสร็จแล้ว ก็จะมี Icon แสดงขึ้นมำทีDesktop 1.1 ดับเบิ้ลคลิกทีIcon เพื่อเข้ำสู่โปรแกรม 2.เมื่อเข้ำสู่โปรแกรมให้คลิกปุ่ม New Project 2.1 จะมีหน้ำ New Project เด้งขึ้นมำ 2.2เลือก Application 2.3 เลือก Qt Widgets Application 2.4 กดปุ่ม Choose.. 2.1 2.3 2.2
38

Qt Mp3 Player

Jan 11, 2016

Download

Documents

QT
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Qt Mp3 Player

1

Qt MP3 PLAYER

Qt MP3 PLAYER 1.เมอท ำกำรตดตงโปรแกรม Qt Creator เสรจแลว กจะม Icon แสดงขนมำท Desktop 1.1 ดบเบลคลกท Icon เพอเขำสโปรแกรม

2.เมอเขำสโปรแกรมใหคลกปม New Project

2.1 จะมหนำ New Project เดงขนมำ 2.2เลอก Application 2.3 เลอก Qt Widgets Application 2.4 กดปม Choose..

2.1

2.3

2.2

Page 2: Qt Mp3 Player

2

Qt MP3 PLAYER

3. Qt Widgets Application (Location) 3.1 ตงชอไฟลโปรแกรม 3.2 เลอกพำรทบนทกไฟลโปรแกรม 3.3 กดปม Next

4. Qt Widgets Application (Kits) 4.1 กดปม Next

4.1

3.1

3.2

3.3

Page 3: Qt Mp3 Player

3

Qt MP3 PLAYER

5. Qt Widgets Application (Detials) 5.1 Base class เลอก QDialog 5.2 กดปม Next

6. Qt Widgets Application (Summary) 6.1 กดปม Finish

6.1

5.1

5.2

Page 4: Qt Mp3 Player

4

Qt MP3 PLAYER

7.เขำสหนำ Project 7.1 โปรแกรมจะเปดไฟล dialog.cpp ขนมำกอนเสมอ

7.1

Page 5: Qt Mp3 Player

5

Qt MP3 PLAYER

8. เปดไฟล .pro ดวยกำรดบเบลคลกท Icon MiniMp3Player.pro 8.1 ท ำกำรเพมโมดล multimedia เขำไปในบรรทดท 8

8.2 ท ำกำรคอมไพลโปรแกรมกอนหนงครง ดวยกำรกดท Icon รปคอน (ดำนลำงซำย) เพอใหโปรแกรมท ำกำรเพมไลบรำลตำงๆทเกยวกบ โมดล multimedia เขำมำในโปรแกรม

8

8.1

8.2

Page 6: Qt Mp3 Player

6

Qt MP3 PLAYER

9. เปดไฟล .h ดวยกำรดบเบลคลกท Icon dialog.h 9.1 ท ำกำรเพมไลบรำล QMediaPlayer เขำมำในโปรแกรม ดงบรรทดท 5 9.2 ท ำกำรเพมไลบรำล QUrl เขำมำในโปรแกรม ดงบรรทดท 6 (ใชในกำรอำงองถงไดเรกทอรไฟล)

9.2 9.1 9

Page 7: Qt Mp3 Player

7

Qt MP3 PLAYER

10.ท ำกำรประกำศตวแปรพอยตเตอร player ใหท ำงำนรวมกบคลำสของ QMediaPlayer ดงบรรทดท 21

10

Page 8: Qt Mp3 Player

8

Qt MP3 PLAYER

11. ดบเบลคลกท Icon dialog.ui เพอท ำกำรสรำง ui (user interfaces)

11

Page 9: Qt Mp3 Player

9

Qt MP3 PLAYER

12.เขำสหนำ UI ใหท ำกำรเพมเครองมอ Herizontal Slider เขำมำในพนท จ ำนวน 2 ตว 12.1 ตวท 1 ท ำหนำทเลอน Scoll เพลง 12.2 ตวท 2 ท ำหนำท เพม – ลด เสยงเพลง

12.21

12.1

คลกลำกมำวำงไดเลยนะครบ

Page 10: Qt Mp3 Player

10

Qt MP3 PLAYER

13. คลกท Herizontal Slider อนท 1 13.1 ท ำกำรเปลยนชอ เปน Slider_progress

13.1

13

Page 11: Qt Mp3 Player

11

Qt MP3 PLAYER

14. คลกท Herizontal Slider อนท 2 14.1 ท ำกำรเปลยนชอ เปน Slider_volume

14

14.1

Page 12: Qt Mp3 Player

12

Qt MP3 PLAYER

15.ท ำกำรเปลยนคำ Value เปน 100 (เพอก ำหนดใหเสยงเพลงมคำเรมตน และ ระดบควำมดงสงสดท 100)

คลก

15

Page 13: Qt Mp3 Player

13

Qt MP3 PLAYER

16.ท ำกำรเพมเครองมอ PushButton เขำมำในพนท จ ำนวน 2 ตว - ตวท 1 ท ำหนำท เรมเลน เสยงเพลง - ตวท 2 ท ำหนำท หยดเลน เสยงเพลง 16.1 คลกทปม PushButton ตวท 1

16.2 ท ำกำรเปลยนชอ เปน PushButton_start

16.1

16.2

คลกลำกมำวำงเลยครบ

Page 14: Qt Mp3 Player

14

Qt MP3 PLAYER

17. คลกทปม PushButton ตวท 2 17.1 ท ำกำรเปลยนชอ เปน PushButton_stop

17.

17.1

Page 15: Qt Mp3 Player

15

Qt MP3 PLAYER

18. ดบคลกทปม PulhButton ตวท 1 18.1 ท ำกำรเปลยนขอควำมเปน Start

19. ดบคลกทปม PulhButton ตวท 2 19.1 ท ำกำรเปลยนขอควำมเปน Stop

18.1

19.1

Page 16: Qt Mp3 Player

16

Qt MP3 PLAYER

20.ท ำกำรเพมเครองมอ label เขำมำในพนท จ ำนวน 2 ตว - ตวท 1 แสดงขอควำม Progress - ตวท 2 แสดงขอควำม Volume 20.1 คลกทปม label ตวท 1

20.2 ท ำกำรเปลยนชอ เปน label_progress

20.1

20.2

คลกลำกมำวำงเลยครบ

Page 17: Qt Mp3 Player

17

Qt MP3 PLAYER

21 คลกทปม label ตวท 2 21.1 ท ำกำรเปลยนชอ เปน label_volume

22. ดบคลกท label ตวท 1 22.1 ท ำกำรเปลยนขอควำมเปน Progress

21

21.1

22.1

Page 18: Qt Mp3 Player

18

Qt MP3 PLAYER

23. ดบคลกท label ตวท 1 23.1 ท ำกำรเปลยนขอควำมเปน Volume

23.1

Page 19: Qt Mp3 Player

19

Qt MP3 PLAYER

24.คลกขวำทเครองมอ Slider_progress 24.1 เลอก Go to slot…

24.2 หนำ Go to slot เลอก sliderMoved(int)

24

24.1

24.2

Page 20: Qt Mp3 Player

20

Qt MP3 PLAYER

24.3 โปรแกรมกจะพำมำยงหนำ dialog.cpp 24.4 โปรแกรมกจะท ำกำรสรำงฟงกชน void Dialog::on_Slider_progress_sliderMoved(int position) ใหอตโนมต ตงแตบรรทดท 16-19

25.คลกขวำทเครองมอ Slider_volume 25.1 เลอก Go to slot…

24.3 24.4

25

25.1

Page 21: Qt Mp3 Player

21

Qt MP3 PLAYER

25.2 หนำ Go to slot เลอก sliderMoved(int)

25.3 โปรแกรมกจะพำมำยงหนำ dialog.cpp 25.4 โปรแกรมกจะท ำกำรสรำงฟงกชน void Dialog::on_Slider_volume_sliderMoved(int position) ใหอตโนมต ตงแตบรรทดท 21-24

25.2

25.3

25.4

Page 22: Qt Mp3 Player

22

Qt MP3 PLAYER

26.คลกขวำทเครองมอ pushButton_start 26.1 เลอก Go to slot…

26.2 หนำ Go to slot เลอก click()

26

26.1

26.2

Page 23: Qt Mp3 Player

23

Qt MP3 PLAYER

26.3 โปรแกรมกจะพำมำยงหนำ dialog.cpp 26.4 โปรแกรมกจะท ำกำรสรำงฟงกชน void Dialog::on_pushButton_start_clicked() ใหอตโนมต ตงแตบรรทดท 26-29

27.คลกขวำทเครองมอ pushButton_stop 27.1 เลอก Go to slot…

26.3

26.4

27

27.1

Page 24: Qt Mp3 Player

24

Qt MP3 PLAYER

27.2 หนำ Go to slot เลอก click()

27.3 โปรแกรมกจะพำมำยงหนำ dialog.cpp 27.4 โปรแกรมกจะท ำกำรสรำงฟงกชน void Dialog::on_pushButton_stop_clicked() ใหอตโนมต ตงแตบรรทดท 31-34

27.3

27.4

27.2

Page 25: Qt Mp3 Player

25

Qt MP3 PLAYER

28.เปดไฟล .h ดวยกำรดบเบลคลกท Icon dialog.h 28.1 จะเหนไดวำ

ฟงกชน void Dialog::on_pushButton_start_clicked() และ ฟงกชน void Dialog::on_pushButton_stop_clicked() ทถกสรำงขนโดยอตโนมตในไฟล dialog.cpp เชนเดยวกน กจะมกำรสรำงโปรโตไปท ของฟงกชน

นนๆ ใหอตโนมตเหมอนกนทไฟล dialog.h (ดงบรรทดท 25 และ 27) 28.2 ประกำศโปรโตไทป เพมขนมำ 2 ฟงกชน ดงบรรทดท 30 และ 31

28.2

28.1

Page 26: Qt Mp3 Player

26

Qt MP3 PLAYER

29.ลำกเมำสทค ำสง on_position แลวคลกขวำ 29.1 เลอก Refactor - > Add Defintion dialog.cpp เพอท ำกำรสรำงฟงกชน void Dialog::on_position(quint64 position) ใหอตโนมต ในไฟล dialog.cpp

29

29.1

Page 27: Qt Mp3 Player

27

Qt MP3 PLAYER

29.2 โปรแกรมกจะพำมำยงหนำ dialog.cpp สงเกตไดวำมฟงกชน void Dialog::on_position(quint64 position) เพมขนมำใหอตโนมต ดงบรรทดท 38 – 41

29.2

Page 28: Qt Mp3 Player

28

Qt MP3 PLAYER

30.ลำกเมำสทค ำสง onduration แลวคลกขวำ 30.1 เลอก Refactor - > Add Defintion dialog.cpp เพอท ำกำรสรำงฟงกชน void Dialog::on_duration(quint64 position) ใหอตโนมต ในไฟล dialog.cpp

30

30.1

Page 29: Qt Mp3 Player

29

Qt MP3 PLAYER

30.2 โปรแกรมกจะพำมำยงหนำ dialog.cpp สงเกตไดวำมฟงกชน void Dialog::on_duration(quint64 position) เพมขนมำใหอตโนมต ดงบรรทดท 43 – 46

30.2

Page 30: Qt Mp3 Player

30

Qt MP3 PLAYER

31. ท ำกำรเพมค ำสง player->setMedia(QUrl::fromLocalFile("C:\\Users\\SoC-Rmutt\\Desktop\\1.mp3")); player->play();

เขำไปในฟงกชน void Dialog::on_pushButton_start_clicked() ดงบรรทดท 35 และ 36 - โดยค ำสงในบรรทดท 35 จะเปนกำรตงคำใหเปดเพลงตำมไดเรกเทอรทเรำก ำหนดไว - โดยค ำสงในบรรทดท 36 จะเปนกำรสงใหเลนเพลงตำมไดเรกทอรทเรำก ำหนดไว

32. จะรไดอยำงไรวำ เพลงขอเรำอยในไดเรกทอรอะไร ? 32.1 ใหคลกขวำทเพลง -> เลอก Properties

31

32.1

Page 31: Qt Mp3 Player

31

Qt MP3 PLAYER

32.2 หนำ Properties เลอกแทป Security 32.3 ให coppy ไดเรกทอรตรง Object name ไปใสใน โปรแกรมของเรำ

32.4 สงเกตไดวำกำรไดเรกทอรทเรำ คดลอกมำจะมกำรแบงโฟลเดอรดวยเครองหมำย \ แคตวเดยว ถำเรำจะน ำไปใสในโปรแกรมของเรำ ใหเครอง \ เพมไปอก 1 ตว ดงภำพ(บรรทดท 35) เนองจำกกำรเขยนโปรแกรมภำษำ C++ ใน Qt น จะมองเหนเครองหมำย \ ทอยภำยใน Double code (“…”) ได ตองใสเครองหมำย \ 2 ตวครบ

32.4

32.3

32.2

Page 32: Qt Mp3 Player

32

Qt MP3 PLAYER

33. ท ำกำรเพมค ำสง player = new QMediaPlayer(this); connect(player,&QMediaPlayer::positionChanged,this,&Dialog::on_position); connect(player,&QMediaPlayer::durationChanged,this,&Dialog::on_duration);

ลงไปในบรรทดท 10 - 11

33

Page 33: Qt Mp3 Player

33

Qt MP3 PLAYER

34.ท ำกำร คอมไพลโปรแกรม (คลกท Icon รปคอน ดำนลำงซำย) 35.ท ำกำร รนโปรแกรม (คลกท Icon รปสำมเหลยมสเขยว ดำนลำงซำย) 36.เมอโปรแกรมรนขนมำ ทดสอบกดปม Start จะมเสยงเพลงดงขนมำ

36 35 34

Page 34: Qt Mp3 Player

34

Qt MP3 PLAYER

37.ท ำกำรเพมค ำสง player->stop(); (ท ำหนำทสงใหหยดเลนเพลง) เขำไปในฟงกชน void Dialog::on_pushButton_stop_clicked() ดงบรรทดท44

38.ท ำกำร คอมไพลโปรแกรม (คลกท Icon รปคอน ดำนลำงซำย) 39.ท ำกำร รนโปรแกรม (คลกท Icon รปสำมเหลยมสเขยว ดำนลำงซำย) 40.เมอโปรแกรมรนขนมำ ทดสอบกดปม Start จะมเสยงเพลงดงขนมำ 41.เมอโปรแกรมรนขนมำ ทดสอบกดปม Stop เสยงเพลงกจะหยด

41 39 38 40

37

Page 35: Qt Mp3 Player

35

Qt MP3 PLAYER

42.ท ำกำรเพมค ำสง ui->Slider_progress->setValue(position); เขำไปในฟงกชน void Dialog::on_position(quint64 position) ดงบรรทดท 51 -- ท ำหนำทใหเครองมอ Slider_progress ขยบไปทำงขวำทละนด ตำมเพลงทเลน (อธบำยตำมควำมเขำใจนะครบ) 43. ท ำกำรเพมค ำสง ui->Slider_progress->setMaximum(position);เขำไปในฟงกชน void Dialog::on_duration(quint64 position) ดงบรรทดท 56 -- ท ำหนำทค ำนวณระยะเวลำของเพลงวำมเทำไหร เพอจะใหเครองมอ Slider_progress เลอนไปตำมควำมยำวของเพลงไดถกตอง (อธบำยตำมควำมเขำใจนะครบ)

42

43

Page 36: Qt Mp3 Player

36

Qt MP3 PLAYER

44. เพมค ำสง player->setPosition(position); เพมเขำไปในฟงกชน void Dialog::on_Slider_progress_sliderMoved(int position) ดงบรรทดท 26 -- ท ำหนำทใหเครองมอ Slider_progress ขยบไปทำงขวำทละนด ตำมเพลงทเลน (อธบำยตำม

ควำมเขำใจนะครบ)

45. เพมค ำสง player->setVolume(position); เพมเขำไปในฟงกชน void Dialog::on_Slider_volume_sliderMoved(int position) ดงบรรทดท 32 -- ท ำหนำทใหเครองมอ Slider_Volume ควบคมระดบควำมดงของเสยงเพลง

44

45

Page 37: Qt Mp3 Player

37

Qt MP3 PLAYER

46.ท ำกำร คอมไพลโปรแกรม (คลกท Icon รปคอน ดำนลำงซำย) 47.ท ำกำร รนโปรแกรม (คลกท Icon รปสำมเหลยมสเขยว ดำนลำงซำย) 48.เมอโปรแกรมรนขนมำ ทดสอบกดปม Start จะมเสยงเพลงดงขนมำ 49.เมอโปรแกรมรนขนมำ ทดสอบกดปม Stop เสยงเพลงกจะหยด 50. เมอโปรแกรมรนขนมำ ทดสอบเลอนเครองมอ Slider_Progress เพลงจะขำมไปยงเวลำตำงๆ 51. เมอโปรแกรมรนขนมำ ทดสอบเลอนเครองมอ Slider_Volume เสยงเพลงกจะมระดบควำมดงตำมทเรำเลอน

47

51

50

49 46

48

Page 38: Qt Mp3 Player

38

Qt MP3 PLAYER

สดนถาอยากน า แอพทพฒนาเสรจแลวไปใชงานในเครองอนๆ ใหท าการ Deploy กอน ตามนเลยครบ http://www.myconfix.com/blog/tutorial/%E0%B8%A1%E0%B8%B7%E0%B8%AD%E0%B9%83%E0%B8%AB%E0%B8%A1%E0%B9%88%E0%B8%AB%E0%B8%B1%E0%B8%94-qt-%E0%B8%95%E0%B8%AD%E0%B8%99-deploy-qt-program-%E0%B9%83%E0%B8%99%E0%B9%80%E0%B8%84%E0%B8%A3%E0%B8%B7 ดำวนโหลดโปรแกรม Qt ไดท http://www.qt.io/download-open-source/#section-2 Ref. : https://www.youtube.com/watch?v=PutunNtVpto เขำมำรวมกลมกบเรำไดท

OpenQt

https://www.facebook.com/groups/865489750211411/?fref=ts

Innovation Startup

https://www.facebook.com/groups/1603142046584186/?fref=ts

เอกสารฉบบนแจกฟร แชร และ แจก ตามอธยาศยเลยคราบบ

Cr. [email protected]