L1
LAMPIRAN
Kuesioner Awal
L2
L3
Lampiran Soal Tes Multiple Intelligence 1 Buku sangat penting bagi saya. Saya tidak mengalami kesulitan dalam permainan kata seperti 2 scrabble,anagrams, atau password. Saya senang menghibur diri sendiri atau orang lain dengan lelucon, sajak lucu3 lucuan, atau permainan kata. Saya dapat mendengar kata-kata di kepala saya sebelum saya membaca, 4 berbicara, atau menuliskannya. Dalam percakapan, saya sering mengungkapkan segala sesuatu yang pernah saya 5 baca atau saya dengar. Saya mendapatkan lebih banyak hal dari mendengarkan radio atau kaset yang 6 banyak berisi kata-kata daripada televisi atau film Ketika bersekolah, saya menganggap pelajaran bahasa, studi sosial dan sejarah 7 lebih mudah daripada matematika dan ilmu alam Kalau saya berkendara di jalan, saya lebih memperhatikan kata-kata yang tertulis 8 di papan reklame daripada memperhatikan pemandangan Kadang-kadang orang lain terpaksa berhenti dan meminta saya untuk menjelaskan makna kata yang saya gunakan dalam tulisan atau pembicaraan 9 saya Akhir-akhir ini saya menulis sesuatu yang amat saya banggakan atau yang 10 membuat saya mendapat pengakuan dari orang lain 11 Dengan mudah saya dapat menghitung angka-angka dalam benak saya. 12 Matematika dan/atau sains merupakan mata pelajaran favorit saya di sekolah. Saya suka melakukan permainan atau memecahkan soal yang menuntut 13 pemikiran logis. 14 Saya selalu mencari pola keteraturan,atau urutan logis dari segala sesuatu. Saya berpendapat bahwa hampir segala sesuatu memiliki penjelasan yang masuk 15 akal. 16 Saya menaruh minat pada perkembangan baru dalam sains. Kadang-kadang saya berpikir dalam konsep yang jelas, abstrak, tanpa kata, tanpa 17 gambar. Saya suka mengadakan percobaan kecil "Bagaimana seandainya"(misalnya Bagaimana seandainya saya melipatgandakan jumlah air yang saya tuangkan ke 18 rumpun mawar?) Saya merasa lebih nyaman bila segala sesuatu sudah diukur, dikelompokkan, 19 dianalisis dengan cara tertentu. 20 Saya sering menemukan salah penalaran dalam segala sesuatu yang dikatakan
L4
21 22 23 24 25 26 27 28 29 30 31 32 33 34
35 36 37 38 39 40 41 42 43 44 45 46 47
atau dilakukan orang lain. Saya peka terhadap warna. Saya sering menggunakan camera atau camcorder untuk merekam apa yang saya lihat di sekitar saya. Saya sering melihat gambaran visual yang jelas ketika menutup kedua mata. Saya mengalami mimpi yang begitu nyata di malam hari. Saya gemar mengerjakan puzzle, maze, dan teka-teki visual lainnya. Saya suka menggambar atau mencoret-coret. Bagi saya ilmu ukur lebih mudah dari aljabar. Biasanya saya dapat mengenali jalan bahkan di wilayah yang tidak saya kenal. Saya lebih suka melihat bahan bacaan yang banyak gambarnya. Saya dapat dengan mudah membayangkan bagaimana sesuatu akan terlihat jika dilihat langsung dari atas dengan pandangan mata seekor burung. Sekurang-kurangnya saya melakukan salah satu jenis olahraga atau kegiatan jasmani lain secara teratur. Saya tidak betah duduk diam berlama-lama. Saya suka berkerja dengan kedua tangan saya dalam kegiatan konkret seperti menjahit,menenun,mengukir,bertukang, atau merakit model. Seringkali saya menghabiskan waktu diluar rumah. Seringkali ide terbaik saya muncul ketika saya sedang berada di luar rumah untuk berjalan-jalan, jogging, atau ketika saya sedang melakukan kegiatan jasmani yang lain. Seringkali saya menggunakan gerak -gerik tangan atau bentuk bahasa tubuh lain ketika bercakap-cakap dengan orang. Saya harus menyentuh bermacam-macam benda supaya lebih banyak mengetahui tentang benda tersebut. Saya senang naik permainan yang mendebarkan atau ikut dalam petualangan jasmani yang menegangkan. Saya suka menggambarkan diri saya sebagai orang yang mempunyai koordinasi tubuh yang baik. Saya harus mempraktekan sebuah keterampilan baru dan bukan sekedar membaca atau menonton video tentang keterampilan itu. Saya dapat membedakan nada musik yang fals. Jika bernyanyi, suara saya terbilang merdu. Saya dapat memainkan alat musik. Saya sering mendengarkan musik di radio, piringan hitam, kaset, atau CD. Hidup saya akan lebih sengsara jika tidak ada musik. Kadang-kadang tanpa sadar saya melantunkan lagu iklan televisi atau lagu lain sewaktu saya berjalan kaki. Dengan mudah saya mengikuti irama musik dengan alat perkusi sederhana.
L5
48 Saya mengenal banyak melodi dari berbagai lagu atau karya musik. Kalau saya mendengarkan karya musik sebanyak satu/dua kali, biasanya saya 49 dapat menyanyikan kembali dengan cukup tepat. Saya sering mengetuk-ngetuk atau melantunkan melodi secara sepotong-potong 50 sambil belajar atau bekerja. Saya adalah jenis orang yang didatangi orang lain untuk diminta nasihat dan 51 bimbingan di tempat kerja atau di tempat tinggal. Saya lebih menyukai olahraga berkelompok seperti bulutangkis, bola volley , 52 atau softball dari pada olah raga tunggal seperti berenang dan jogging. 53 Saya senang berada di kerumunan orang. Saya lebih suka menghabiskan petang hari di sebuah pertemuan yang meriah 54 daripada tinggal sendirian di rumah. 55 Saya mempunyai sekurang-kurangnya tiga orang sahabat dekat. Saya lebih menyukai permainan bersama untuk mengisi waktu seperti monopoli 56 atau bridge. Saya tertantang untuk mengajari orang lain, atau kelompok orang tentang apa 57 yang dapat saya kerjakan. 58 Saya menganggap diri saya sebagai pemimpin. Saya suka terlibat dalam kegiatan sosial yang berhubungan dengan pekerjaan, 59 tempat ibadah, atau komunitas tempat tinggal saya. Kalau saya menghadapi masalah, saya cenderung mencari orang lain untuk 60 dimintai pertolongan daripada berusaha memecahkannya sendiri. Saya mempunyai hobi atau minat khusus yang saya simpan rapat-rapat untuk 61 saya sendiri. 62 Saya punya pendapat yang membuat saya berbeda dengan orang biasa. Saya mempunyai sasaran penting dalam hidup saya yang saya renungkan secara 63 berkala. Saya lebih suka menghabiskan waktu akhir pekan sendirian di sebuah pondok di hutan daripada di sebuah tempat peristirahatan mewah dengan banyak orang 64 disekitarnya. Saya telah mengikuti sesi bimbingan atau seminar pengembangan pribadi untuk 65 lebih mengenal diri saya. Secara berkala saya meluangkan waktu sendirian untuk bermeditasi, merenung, 66 atau memikirkan masalah kehidupan yang penting. 67 Saya menganggap diri saya berkemauan keras dan berpikiran mandiri. Saya mempunyai pandangan yang realistis tentang kelemahan dan kekuatan 68 saya(yang saya dapat dari feedback orang lain). Saya mempunyai buku harian atau jurnal untuk merekam peristiwa kehidupan 69 batin saya. 70 Saya berwiraswasta atau setidak-tidaknya amat ingin memulai usaha sendiri.
L6
71 Saya memiliki taman dan gemar mondar mandir di sekelilingnya. Saya gemar menghabiskan waktu dengan pergi berjalan kaki dengan membawa tas punggung, hiking, atau sekadar berjalan-jalan di alam terbuka dan menikmati 72 kekayaannya. 73 Saya menikmati kehadiran binatang-binatang di sekitar rumah. 74 Saya mempunyai hobi yang berhubungan dengan alam. Saya gemar mengunjungi kebun binatang, museum sejarah alam, atau tempat 75 dimana dunia alam dipelajari. Saya gemar menonton tayangan televisi yang bertemakana alam (misal 76 Discovery Channel). 77 Saya pernah bergabung dalam sebuah organisasi lingkungan hidup sukarela. Saya telah mengikuti kursus pendidikan bagi orang dewasa yang berkaitan 78 dengan alam. Untuk liburan, saya lebih suka pergi ke alam terbuka (taman, tempat berkemah) 79 daripada hotel/tempat peristirahatan atau kota besar. Saya sangat mahir membedakan berbagai jenis burung, anjing, atau flora fauna 80 lainnya. Saya mendapatkan makna dari kegiatan menghadiri suatu bentuk ibadah atau studi di gereja, sinagoga, mesjid, kuil, atau organisasi keagamaan atau organisasi 81 filsafat lainnya yang dilakukan secara teratur. Secara teratur saya meluangkan waktu untuk bermeditasi atau merenungkan 82 pertanyaan seputar kehidupan dan kematian. Secara dewasa, saya mempunyai pengalaman spiritual atau filsafat yang khusus 83 yang membuat saya memikirkan kehidupan secara lebih mendalam. Saya membaca literatur (teks suci, buku kerohanian, atau filsafat) yang menolong saya dalam memikirkan atau merenungkan eksistensi secara lebih 84 mendalam. 85 Saya gemar terlibat dalam diskusi filsafat atau keagamaan dengan orang lain. Dibandingkan dengan orang lain, saya lebih sering memikirkan tentang makna 86 kehidupan. Saya sering mengungkapkan perasaan dan gagasan saya dalam hal spiritual, filsafat atau eksistensial melalui karya seni, penelitian, pelayanan, atau cara kerja 87 kreatif lainnya. Saya meluangkan waktu secara teratur untuk mengunjungi tempat retret untuk 88 merenungkan makna kehidupan, Tuhan, dan/atau pertanyaan besar lainnya. Saya tertarik pada film, drama, atau pagelaran lain yang bertemakan spiritualitas, 89 filsafat, atau eksistensial. Saya sedang memikirkan untuk/telah terjun dalam suatu karir yang memberi saya kesempatan untuk memusatkan perhatian kepada masalah eksistensial atau 90 keagamaan dengan orang lain.
L7
L8
L9
L10
L11
L12
L13
L14
L15
L16
L17
L18
L19
L20
L21
L22
L23
L24
L25
L26
L27
L28
L29
L30
L31
L32
L33
L34
L35
L36
L37
L38
L39
L40
L41
L42
L43
L44
L45
L46
L47
L48
L49
L50
L51
Perhitungan Consistency Ratio Peminatan Multimedia Responden 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
Lambda 9.824677 9.361628 9.561598 9.479214 9.429234 10.04206 9.470256 9.614237 9.454492 9.681802 9.920949 9.29204 9.561598 10.00112 9.657615 9.454492 9.508196 9.357728 9.306557 9.772997 10.13053 10.01401 9.260506 9.289859 9.738171 9.772997 9.98778 10.00112 9.289859 9.828301 9.357728 9.306557 9.751208 9.555178 9.871204 9.479214 9.847584 9.303875 9.46411 9.493956
CI 0.103085 0.045203 0.0702 0.059902 0.053654 0.130257 0.058782 0.07678 0.056812 0.085225 0.115119 0.036505 0.0702 0.12514 0.082202 0.056812 0.063525 0.044716 0.03832 0.096625 0.141317 0.126752 0.032563 0.036232 0.092271 0.096625 0.123473 0.12514 0.036232 0.103538 0.044716 0.03832 0.093901 0.069397 0.1089 0.059902 0.105948 0.037984 0.058014 0.061745
CR 0.0711 0.0312 0.0484 0.0413 0.0370 0.0898 0.0405 0.0530 0.0392 0.0588 0.0794 0.0252 0.0484 0.0863 0.0567 0.0392 0.0438 0.0308 0.0264 0.0666 0.0975 0.0874 0.0225 0.0250 0.0636 0.0666 0.0852 0.0863 0.0250 0.0714 0.0308 0.0264 0.0648 0.0479 0.0751 0.0413 0.0731 0.0262 0.0400 0.0426
L52
Perhitungan Consistency Ratio Peminatan Software Engineering Responden 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
Lambda 9.191313 9.475252 9.228077 9.60264 10.02098 9.228077 9.880264 9.293917 9.30713 9.328526 9.60853 9.282135 10.02098 10.14946 9.804555 9.084638 9.913558 9.688119 9.144198 9.60853 9.30713 9.370875 9.804555 9.913558 9.688119 9.811288 9.293917 9.804555 10.05358 9.423178 9.385212 9.306189 9.509941
CI 0.023914 0.059407 0.02851 0.07533 0.127623 0.02851 0.110033 0.03674 0.038391 0.041066 0.076066 0.035267 0.127623 0.143683 0.100569 0.01058 0.114195 0.086015 0.018025 0.076066 0.038391 0.046359 0.100569 0.114195 0.086015 0.101411 0.03674 0.100569 0.131698 0.052897 0.048152 0.038274 0.063743
CR 0.0165 0.0410 0.0197 0.0520 0.0880 0.0197 0.0759 0.0253 0.0265 0.0283 0.0525 0.0243 0.0880 0.0991 0.0694 0.0073 0.0788 0.0593 0.0124 0.0525 0.0265 0.0320 0.0694 0.0788 0.0593 0.0699 0.0253 0.0694 0.0908 0.0365 0.0332 0.0264 0.0440
L53
Perhitungan Consistency Ratio Peminatan Database Responden
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
Lambda 9.45217 9.489912 9.22829 9.842584 9.794281 9.747655 9.464385 9.489912 9.622704 9 10.05923 9.507812 9.286459 9.449145 9.803574 9.84017 9 9.624263 9.449145 9.321185 9.747655 9.149456 10.05923 9.507812 9.380123 9.174383 9.796183 9.277912 9.479178 9.429065 9.119299 9.45217 9.539979 9.65845 9.466269 9.826741 9.751167 9.119299 9.656534 9.277912
CI 0.056521 0.061239 0.028536 0.105323 0.099285 0.093457 0.058048 0.061239 0.077838 2.22E‐16 0.132404 0.063477 0.035807 0.056143 0.100447 0.105021 2.22E‐16 0.078033 0.056143 0.040148 0.093457 0.018682 0.132404 0.063477 0.047515 0.021798 0.099523 0.034739 0.059897 0.053633 0.014912 0.056521 0.067497 0.082306 0.058284 0.103343 0.093896 0.014912 0.082067 0.034739
CR 0.0390 0.0422 0.0197 0.0726 0.0685 0.0645 0.0400 0.0422 0.0537 0.0000 0.0913 0.0438 0.0247 0.0387 0.0693 0.0724 0.0000 0.0538 0.0387 0.0277 0.0645 0.0129 0.0913 0.0438 0.0328 0.0150 0.0686 0.0240 0.0413 0.0370 0.0103 0.0390 0.0465 0.0568 0.0402 0.0713 0.0648 0.0103 0.0566 0.0240
L54
Perhitungan Consistency Ratio Peminatan Artificial Intelligence Responden
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Lambda 9.161929 9.139939 9.235774 9.221824 9.29397 9.198033 9.478973 9.499976 9.413613 9.587513 9.91151 9.228077 9.581078 9.286355 9.91662 10.03261 9.731426 9.218268 9.749075 9.531274 9.413613 9.472848 9.581078 9.48782 9.173628 9.460991 9.504362 9.470097 9.198033 9.478973
CI 0.020241 0.017492 0.029472 0.027728 0.036746 0.024754 0.059872 0.062497 0.051702 0.073439 0.113939 0.02851 0.072635 0.035794 0.114578 0.129076 0.091428 0.027284 0.093634 0.066409 0.051702 0.059106 0.072635 0.060978 0.021703 0.057624 0.063045 0.058762 0.024754 0.059872
CR 0.0140 0.0121 0.0203 0.0191 0.0253 0.0171 0.0413 0.0431 0.0357 0.0506 0.0786 0.0197 0.0501 0.0247 0.0790 0.0890 0.0631 0.0188 0.0646 0.0458 0.0357 0.0408 0.0501 0.0421 0.0150 0.0397 0.0435 0.0405 0.0171 0.0413
L55
Perhitungan Consistency Ratio Peminatan Networking Responden
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Lambda 9.762025 10.02514 9.745935 9.819431 9.495698 10.16939 10.04854 9.652813 9.295851 9.464726 9.955252 9.819431 9.762025 10.02514 10.13984 10.04854 9.430255 9.819431 9.736705 9.464726 9.837737 9.343408 9.295851 9.330445 9.979511 9.354807 9.516232 9.368211 9.464726 9.955252
CI 0.095253 0.128142 0.093242 0.102429 0.061962 0.146174 0.131067 0.081602 0.036981 0.058091 0.119406 0.102429 0.095253 0.128142 0.142481 0.131067 0.053782 0.102429 0.092088 0.058091 0.104717 0.042926 0.036981 0.041306 0.122439 0.044351 0.064529 0.046026 0.058091 0.119406
CR 0.0657 0.0884 0.0643 0.0706 0.0427 0.1008 0.0904 0.0563 0.0255 0.0401 0.0823 0.0706 0.0657 0.0884 0.0983 0.0904 0.0371 0.0706 0.0635 0.0401 0.0722 0.0296 0.0255 0.0285 0.0844 0.0306 0.0445 0.0317 0.0401 0.0823
L56
Perhitungan Consistency Ratio Peminatan CISCO Responden
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Lambda 9.744827 9.795525 9.354807 9.516232 9.368211 9.697977 10.09261 9.697977 9.414776 9.806022 9.119695 9.354807 9.316697 9.795525 9 9.289231 9.295851 9.330445 9.979511 9.363286 9.697977 9.354188 9.354807 9.316697 9.330445 9.806022 9.289231 9.996606 9.39614 9.233216
CI 0.093103 0.099441 0.044351 0.064529 0.046026 0.087247 0.136576 0.087247 0.051847 0.100753 0.014962 0.044351 0.039587 0.099441 2.22E‐16 0.036154 0.036981 0.041306 0.122439 0.045411 0.087247 0.044273 0.044351 0.039587 0.041306 0.100753 0.036154 0.124576 0.049518 0.029152
CR 0.0642 0.0686 0.0306 0.0445 0.0317 0.0602 0.0942 0.0602 0.0358 0.0695 0.0103 0.0306 0.0273 0.0686 0.0000 0.0249 0.0255 0.0285 0.0844 0.0313 0.0602 0.0305 0.0306 0.0273 0.0285 0.0695 0.0249 0.0859 0.0342 0.0201
L57
Perhitungan Consistency Ratio Peminatan ORACLE Responden
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Lambda 9.750714 9.271713 9.371364 9 9.137403 9.560529 9.234707 9.251366 9.418306 9.183726 9.87901 9.259462 9.144198 9.351554 9.109391 9.572402 9.195494 9.151725 9.560529 9.234707 9.251366 9.259462 9.371364 9.87901 9.259462 9.750714 9.271713 9.251366 9.418306 9.234707
CI 0.093839 0.033964 0.046421 2.22E‐16 0.017175 0.070066 0.029338 0.031421 0.052288 0.022966 0.109876 0.032433 0.018025 0.043944 0.013674 0.07155 0.024437 0.018966 0.070066 0.029338 0.031421 0.032433 0.046421 0.109876 0.032433 0.093839 0.033964 0.031421 0.052288 0.029338
CR 0.0647 0.0234 0.0320 0.0000 0.0118 0.0483 0.0202 0.0217 0.0361 0.0158 0.0758 0.0224 0.0124 0.0303 0.0094 0.0493 0.0169 0.0131 0.0483 0.0202 0.0217 0.0224 0.0320 0.0758 0.0224 0.0647 0.0234 0.0217 0.0361 0.0202
L58
LISTING PROGRAM datahistorytes.cpp #include "datahistorytes.h" DataHistoryTes::DataHistoryTes() {} DataHistoryTes::DataHistoryTes(QVariant tanggalValue, QVariant idPeminatanValue, QVariant namaPeminatanValue, QVariant hasilValue) { this->tanggal = tanggalValue; this->idPeminatan = idPeminatanValue; this->namaPeminatan = namaPeminatanValue; this->hasil = hasilValue; } datakecerdasan.cpp #include "datakecerdasan.h" DataKecerdasan::DataKecerdasan() { } DataKecerdasan::DataKecerdasan(QVariant idValue, QVariant weightValue) { this->idKec = idValue; this->weight = weightValue; } datapeminatan.cpp #include "datapeminatan.h" DataPeminatan::DataPeminatan() { } DataPeminatan::DataPeminatan(QVariant idValue, QList
dataKecValue) { this->idPeminatan = idValue; this->dataKecerdasan = dataKecValue;
L59
} void DataPeminatan::SetID(QVariant idval) { this->idPeminatan = idval; } datapertanyaan.cpp #include "datapertanyaan.h" DataPertanyaan::DataPertanyaan() { } DataPertanyaan::DataPertanyaan ( QVariant idvalue, QVariant soalvalue, QVariant idkecvalue ) { this->idpertanyaan = idvalue; this->soal = soalvalue; this->idkecerdasan = idkecvalue; } dbhistorytes.cpp #include #include #include #include "dbhistorytes.h" DBHistoryTes::DBHistoryTes() { } //connect to database void DBHistoryTes::Connect() { //connect this->database = QSqlDatabase::addDatabase("QSQLITE");
L60
this->database.setDatabaseName(QString::fromUtf8(this>applicationdirpath.absolutePath().toUtf8() + "/DBase.sqlite")); } //disconnect from database void DBHistoryTes::DisConnect() { //disconnect QSqlDatabase::removeDatabase(QString::fromUtf8("qt_sql_default_connection")); } //open database void DBHistoryTes::Open() { //open this->database.open(); this->database.transaction(); } //close database void DBHistoryTes::Close() { //close database this->database.commit(); this->database.close(); } void DBHistoryTes::InsertHistoryTes(QList listPeminatan, QString NIM) { { DBHistoryTes database; //database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; QVariant a = listPeminatan.at(0)->idPeminatan; QString b = NIM; query.exec("SELECT MAX(idHasil) from HasilTes"); QVariant newID;
L61
if(query.next()) { newID = query.value(0).toInt() + 1; } for(int i=0; i<listPeminatan.count(); i++) { QVariant result = 0; for(int j = 0; j < listPeminatan.at(i)->dataKecerdasan.count(); j++) { result = result.value<double>() + listPeminatan.at(i)->dataKecerdasan.at(j)>weight.value<double>(); } result = result.value<double>() * 100; QDateTime nowDate = QDateTime::currentDateTime(); QString a = nowDate.toString("dddd, d MMMM yyyy hh:mm:ss"); query.exec("INSERT INTO HasilTes(idHasil, idPeminatan, NIM, tanggal, hasil) values('" + newID.value() + "', '" + listPeminatan.at(i)>idPeminatan.toString() + "', '" + NIM + "', '" + a + "', '" + result.toString() + "')"); } query.clear(); //close database database.Close(); } //disconect database DBHistoryTes databasedivorce; //databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); } QList DBHistoryTes::GetCurrentHistoryTes(QString NIM) { DataHistoryTes *datahistorytes; QList tempList; { DBHistoryTes database;
L62
//database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; query.exec("SELECT tanggal, a.idpeminatan, hasil, b.namapeminatan from HasilTes a join Peminatan b on a.idpeminatan = b.idpeminatan where NIM = '" + NIM + "' order by idHasil desc, hasil desc LIMIT 7"); while(query.next() == true) { datahistorytes = new DataHistoryTes ( query.record().value(QString::fromUtf8("tanggal")), query.record().value(QString::fromUtf8("idPeminatan")), query.record().value(QString::fromUtf8("namaPeminatan")), query.record().value(QString::fromUtf8("hasil")) ); tempList.append(datahistorytes); } query.clear(); //close database database.Close(); } //disconect database DBHistoryTes databasedivorce; //databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); return tempList; } QList DBHistoryTes::GetAllHistoryTes(QString NIM) { DataHistoryTes *datahistorytes;
L63
QList tempList; { DBHistoryTes database; //database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; query.exec("SELECT tanggal, a.idpeminatan, hasil, b.namapeminatan from HasilTes a join Peminatan b on a.idpeminatan = b.idpeminatan where NIM = '" + NIM + "' order by idHasil desc, hasil desc"); while(query.next() == true) { datahistorytes = new DataHistoryTes ( query.record().value(QString::fromUtf8("tanggal")), query.record().value(QString::fromUtf8("idPeminatan")), query.record().value(QString::fromUtf8("namaPeminatan")), query.record().value(QString::fromUtf8("hasil")) ); tempList.append(datahistorytes); } query.clear(); //close database database.Close(); } //disconect database DBHistoryTes databasedivorce; //databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); return tempList; }
L64
//compact database for reducing size void DBHistoryTes::Compact() { //extra case needed for preventing memory leak { //open database DBHistoryTes database; //database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query data QSqlQuery query; query.exec(QString::fromUtf8("VACUUM")); query.clear(); //close database database.Close(); } //disconect database DBHistoryTes databasedivorce; //databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); } dbmahasiswa.cpp #include #include #include #include "dbmahasiswa.h" DBMahasiswa::DBMahasiswa() { } //connect to database void DBMahasiswa::Connect() { //connect
L65
this->database = QSqlDatabase::addDatabase("QSQLITE"); this->database.setDatabaseName(QString::fromUtf8(this>applicationdirpath.absolutePath().toUtf8() + "/DBase.sqlite")); } //disconnect from database void DBMahasiswa::DisConnect() { //disconnect QSqlDatabase::removeDatabase(QString::fromUtf8("qt_sql_default_connection")); } //open database void DBMahasiswa::Open() { //open this->database.open(); this->database.transaction(); } //close database void DBMahasiswa::Close() { //close database this->database.commit(); this->database.close(); } bool DBMahasiswa::isNotExists(QString NIM) { bool notExists = true; { DBMahasiswa database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; query.exec("SELECT * from mahasiswa where nim = '" + NIM + "'"); while(query.next() == true)
L66
{ notExists = false; } query.clear(); //close database database.Close(); } //disconect database DBMahasiswa databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); return notExists; } void DBMahasiswa::insertMhs(QString NIM) { { DBMahasiswa database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; query.exec("INSERT into mahasiswa values('" + NIM + "')"); query.clear(); //close database database.Close(); } //disconect database DBMahasiswa databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath;
L67
databasedivorce.DisConnect(); //compact database this->Compact(); } //compact database for reducing size void DBMahasiswa::Compact() { //extra case needed for preventing memory leak { //open database DBMahasiswa database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query data QSqlQuery query; query.exec(QString::fromUtf8("VACUUM")); query.clear(); //close database database.Close(); } //disconect database DBMahasiswa databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); } dbpeminatan.cpp #include #include #include #include "dbpeminatan.h"
DBPeminatan::DBPeminatan() {
L68
} //connect to database void DBPeminatan::Connect() { //connect this->database = QSqlDatabase::addDatabase("QSQLITE"); this->database.setDatabaseName(QString::fromUtf8(this>applicationdirpath.absolutePath().toUtf8() + "/DBase.sqlite")); } //disconnect from database void DBPeminatan::DisConnect() { //disconnect QSqlDatabase::removeDatabase(QString::fromUtf8("qt_sql_default_connection")); } //open database void DBPeminatan::Open() { //open this->database.open(); this->database.transaction(); } //close database void DBPeminatan::Close() { //close database this->database.commit(); this->database.close(); } QList DBPeminatan::GetDataPeminatan() { QList listPeminatan; { DBPeminatan database; //database.applicationdirpath = this->applicationdirpath; database.Connect();
L69
database.Open(); //query address DataPeminatan *dataPeminatan; QSqlQuery query; query.exec("SELECT * from peminatan"); while(query.next()) { dataPeminatan = new DataPeminatan(); dataPeminatan->idPeminatan.setValue(query.value(0).toString()); dataPeminatan->namaPeminatan.setValue(query.value(1).toString()); dataPeminatan->keterangan.setValue(query.value(2).toString()); listPeminatan.append(dataPeminatan); } query.clear(); //close database database.Close(); } //disconect database DBPeminatan databasedivorce; //databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); return listPeminatan; } void DBPeminatan::EditPeminatan(DataPeminatan *dataPeminatan) { { DBPeminatan database; //database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open();
L70
//query address QString aa = dataPeminatan->namaPeminatan.toString(); QString bb = dataPeminatan->keterangan.toString(); QSqlQuery query; query.exec("Update peminatan set Keterangan = '" + bb + "' where NamaPeminatan = '" + aa + "'"); query.clear(); //close database database.Close(); } //disconect database DBPeminatan databasedivorce; //databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); } //compact database for reducing size void DBPeminatan::Compact() { //extra case needed for preventing memory leak { //open database DBPeminatan database; //database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query data QSqlQuery query; query.exec(QString::fromUtf8("VACUUM")); query.clear(); //close database database.Close(); }
L71
//disconect database DBPeminatan databasedivorce; //databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); } dbpertanyaan.cpp #include #include #include "dbpertanyaan.h" DBPertanyaan::DBPertanyaan() { } //connect to database void DBPertanyaan::Connect() { //connect this->database = QSqlDatabase::addDatabase("QSQLITE"); this->database.setDatabaseName(QString::fromUtf8(this>applicationdirpath.absolutePath().toUtf8() + "/DBase.sqlite")); } //disconnect from database void DBPertanyaan::DisConnect() { //disconnect QSqlDatabase::removeDatabase(QString::fromUtf8("qt_sql_default_connection")); } //open database void DBPertanyaan::Open() { //open this->database.open(); this->database.transaction(); } //close database void DBPertanyaan::Close()
L72
{ //close database this->database.commit(); this->database.close(); } QList DBPertanyaan::GetPertanyaan() { DataPertanyaan *datapertanyaan; QList tempList; { DBPertanyaan database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; query.exec(QString::fromUtf8("SELECT distinct a.idpertanyaan, a.soal, b.idkecerdasan FROM pertanyaan a join trpertanyaan b on a.idpertanyaan = b.idpertanyaan order by random();")); while(query.next() == true) { datapertanyaan = new DataPertanyaan ( query.record().value(QString::fromUtf8("idpertanyaan")), query.record().value(QString::fromUtf8("soal")), query.record().value(QString::fromUtf8("idkecerdasan")) ); tempList.append(datapertanyaan); } query.clear(); //close database database.Close(); } //disconect database DBPertanyaan databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath;
L73
databasedivorce.DisConnect(); //compact database this->Compact(); return tempList; } QList DBPertanyaan::GetDataKecerdasanByIdPeminatan(QList tempList) { { DBPertanyaan database2; database2.applicationdirpath = this->applicationdirpath; database2.Connect(); database2.Open(); QSqlQuery query2; for(int i = 0; i < tempList.count(); i++) { QString q = "SELECT idkecerdasan, weight from trkecerdasan where idpeminatan = '" + tempList.at(i)->idPeminatan.value() + "'"; query2.exec(q); while(query2.next()) { tempList.at(i)->dataKecerdasan.append(new DataKecerdasan ( query2.record().value(QString::fromUtf8("idKecerdasan")), query2.record().value(QString::fromUtf8("weight")) )); } } query2.clear(); database2.Close(); } //disconect database DBPertanyaan databasedivorce2; databasedivorce2.applicationdirpath = this->applicationdirpath; databasedivorce2.DisConnect();
L74
//compact database this->Compact(); return tempList; } QList DBPertanyaan::GetDataPeminatanAndKecerdasan() { DataPeminatan *dataPeminatan; QList tempList; { DBPertanyaan database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; // get data peminatan query.exec(QString::fromUtf8("SELECT idpeminatan from Peminatan")); while(query.next()) { dataPeminatan = new DataPeminatan(); QVariant aa = query.record().value(QString::fromUtf8("idpeminatan")); QString ab = aa.toString(); dataPeminatan->SetID(aa); tempList.append(dataPeminatan); } query.clear(); //close database database.Close(); } //disconect database DBPertanyaan databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect();
L75
//compact database this->Compact(); QList finalList = this>GetDataKecerdasanByIdPeminatan(tempList); return finalList; } int DBPertanyaan::CountKecerdasan() { int countKec = 0; { DBPertanyaan database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QSqlQuery query; query.exec(QString::fromUtf8("SELECT * from kecerdasan")); while(query.next() == true) { countKec++; } query.clear(); //close database database.Close(); } //disconect database DBPertanyaan databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); return countKec;
L76
} int DBPertanyaan::CountJmlPertanyaanByKecerdasan(QVariant idKecerdasan) { int countPertanyaan = 0; //int tes = idKecerdasan.toInt(); { DBPertanyaan database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query address QString queryString = "SELECT count(*) as cnt from trpertanyaan where idkecerdasan = " + idKecerdasan.toString(); QSqlQuery query; query.exec(queryString); while(query.next() == true) { countPertanyaan = query.record().value(QString::fromUtf8("cnt")).toInt(); } query.clear(); //close database database.Close(); } //disconect database DBPertanyaan databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); //compact database this->Compact(); return countPertanyaan; } //compact database for reducing size
L77
void DBPertanyaan::Compact() { //extra case needed for preventing memory leak { //open database DBPertanyaan database; database.applicationdirpath = this->applicationdirpath; database.Connect(); database.Open(); //query data QSqlQuery query; query.exec(QString::fromUtf8("VACUUM")); query.clear(); //close database database.Close(); } //disconect database DBPertanyaan databasedivorce; databasedivorce.applicationdirpath = this->applicationdirpath; databasedivorce.DisConnect(); } Login.cpp #include "login.h" #include "mainwindow.h" #include "ui_login.h" #include Login::Login(QWidget *parent) : QWidget(parent), m_ui(new Ui::Login) { m_ui->setupUi(this); this->setGeometry(QApplication::desktop()->width() / 3 + 50, QApplication::desktop()->height() / 3, 321, 139); this->setWindowTitle("Aplikasi Rekomendasi Peminatan - Login");
L78
QObject::connect(this->m_ui->btnLogin, SIGNAL(clicked()), this, SLOT(btnLoginClicked())); } Login::~Login() { delete m_ui; } void Login::btnLoginClicked() { NIM = this->m_ui->txtNIM->text(); if(this->dbmahasiswa->isNotExists(NIM)) { this->dbmahasiswa->insertMhs(NIM); } this->close(); mainwindow = new MainWindow(); mainwindow->show(); mainwindow->applicationdirpath = this->applicationdirpath; mainwindow->dbpertanyaan = new DBPertanyaan(); mainwindow->dbmahasiswa = new DBMahasiswa(); mainwindow->setNIM(NIM); mainwindow->dbpertanyaan->applicationdirpath = mainwindow->applicationdirpath; } Main.cpp #include "dbpertanyaan.h" #include "dbmahasiswa.h" #include "login.h" #include "ui_login.h" #include #include #include int main(int argc, char **argv) { QApplication app(argc, argv);
L79
Login login; login.applicationdirpath = app.applicationDirPath(); login.dbmahasiswa = new DBMahasiswa(); login.dbmahasiswa->applicationdirpath = login.applicationdirpath; login.show(); return app.exec(); } mainmenu.cpp #include "mainmenu.h" #include "ui_mainmenu.h" #include "datapertanyaan.h" #include MainMenu::MainMenu(QWidget *parent) : QWidget(parent), ui(new Ui::MainMenu) { ui->setupUi(this); this->setWindowTitle("Aplikasi Rekomendasi Peminatan"); QObject::connect(this->ui->quitButton, SIGNAL(clicked()), this, SLOT(close())); QObject::connect(this->ui->testButton, SIGNAL(clicked()), this, SLOT(btnAmbilTesClicked())); QObject::connect(this->ui->infoButton, SIGNAL(clicked()), this, SLOT(btnInfoPeminatanClicked())); } MainMenu::~MainMenu() { delete ui; } void MainMenu::btnAmbilTesClicked() { //getPertanyaan(); WidgetQuestion *temp = new WidgetQuestion(); this->ui->verticalLayoutContent->addWidget(temp); } void MainMenu::btnInfoPeminatanClicked() {
L80
WidgetInfoPeminatan *widgetInfo = new WidgetInfoPeminatan(); //this->ui->verticalLayoutContent-> this->ui->verticalLayoutContent->addWidget(widgetInfo); } void MainMenu::getPertanyaan() { //QList listPertanyaan = this->dbpertanyaan->GetPertanyaan(); for(int i = 0; i < 2; i = i + 1) { WidgetQuestion *temp = new WidgetQuestion(); // temp->fillQuestion(listPertanyaan.at(i)->soal.toString()); this->questions.append(temp); this->ui->verticalLayoutContent->addWidget(this->questions.at(i)); } } mainwindow.cpp #include "mainwindow.h" #include "ui_mainwindow.h" #include "datapertanyaan.h" #include #include #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); this->flag = 2; this->flagAlert = false; this->setWindowTitle("Aplikasi Rekomendasi Peminatan"); this->info = new WidgetInfoPeminatan(); this->ui->verticalLayoutContent->addWidget(info); this->ui->pushButton->hide(); this->ui->pushButtonNext->hide(); this->setGeometry(0,25,QApplication::desktop()->width(),QApplication::desktop()>height()-35);
L81
QObject::connect(this->ui->quitButton, SIGNAL(clicked()), this, SLOT(close())); QObject::connect(this->ui->testButton, SIGNAL(clicked()), this, SLOT(btnAmbilTesClicked())); QObject::connect(this->ui->infoButton, SIGNAL(clicked()), this, SLOT(btnInfoPeminatanClicked())); QObject::connect(this->ui->pushButton, SIGNAL(clicked()), this, SLOT(btnSubmitClicked())); QObject::connect(this->ui->pushButtonNext, SIGNAL(clicked()), this, SLOT(btnNextClicked())); QObject::connect(this->ui->historyButton, SIGNAL(clicked()), this, SLOT(btnHistoryClicked())); } MainWindow::~MainWindow() { delete ui; } void MainWindow::btnAmbilTesClicked() { if(flagAlert == true) { delete widgetAlert; } else { if(flag == 2) { delete info; } else if(flag == 1) { delete widgetListPertanyaan; } else if(flag == 3) { delete widgetListHistory; } } flagAlert = false; flag = 1;
L82
this->CurrPage = 1; this->ui->pushButton->hide(); this->ui->lblPage->show(); this->listPertanyaan = this->dbpertanyaan->GetPertanyaan(); this->originPeminatan = this->dbpertanyaan->GetDataPeminatanAndKecerdasan(); this->resultPeminatan.clear(); // reset result weight to 0 for(int i = 0; i < originPeminatan.count(); i++) { resultPeminatan.append(new DataPeminatan()); resultPeminatan.at(i)->idPeminatan = originPeminatan.at(i)->idPeminatan; for(int j = 0; j < originPeminatan.at(i)->dataKecerdasan.count(); j++) { resultPeminatan.at(i)->dataKecerdasan.append(new DataKecerdasan()); resultPeminatan.at(i)->dataKecerdasan.at(j)->idKec = originPeminatan.at(i)>dataKecerdasan.at(j)->idKec; resultPeminatan.at(i)->dataKecerdasan.at(j)->weight = 0; } } GetPertanyaan(); } void MainWindow::btnInfoPeminatanClicked() { if(flagAlert == true) { delete widgetAlert; } else { if(flag == 2) { delete info; } else if(flag == 1) { delete widgetListPertanyaan; }
L83
else if(flag == 3) { delete widgetListHistory; } } flagAlert = false; flag = 2; this->info = new WidgetInfoPeminatan(); this->ui->verticalLayoutContent->addWidget(info); this->ui->pushButton->hide(); this->ui->pushButtonNext->hide(); this->ui->lblPage->hide(); } void MainWindow::btnHistoryClicked() { if(flagAlert == true) { delete widgetAlert; } else { if(flag == 2) { delete info; } else if(flag == 1) { delete widgetListPertanyaan; } else if(flag == 3) { delete widgetListHistory; } } flagAlert = false; flag = 3; this->GetAllHistory(); this->ui->pushButton->hide(); this->ui->pushButtonNext->hide(); this->ui->lblPage->hide();
L84
} void MainWindow::GetPertanyaan() { widgetListPertanyaan = new WidgetListPertanyaan(); for(int i = (CurrPage - 1) * 10; i < CurrPage * 10 && i < listPertanyaan.count(); i = i + 1) { widgetListPertanyaan->FillQuestion(i+1, listPertanyaan.at(i)->idpertanyaan, listPertanyaan.at(i)->soal.toString()); } this->ui->verticalLayoutContent->addWidget(widgetListPertanyaan); CheckPaging(); } void MainWindow::CheckPaging() { this->TotalRecord = this->listPertanyaan.size(); this->SumPage = 1; if(this->TotalRecord % 10 == 0) { this->SumPage = this->TotalRecord / 10; } else { this->SumPage = this->TotalRecord / 10 + 1; } if(SumPage == 1 || (SumPage > 1 && CurrPage == SumPage)) { this->ui->pushButtonNext->hide(); this->ui->pushButton->show(); } else if(SumPage > 1 && CurrPage != SumPage) { this->ui->pushButtonNext->show(); this->ui->pushButton->hide(); }
L85
QString c; this->ui->lblPage->setText("Halaman " + c.sprintf("%d ", CurrPage) + "dari " + c.sprintf("%d ", SumPage)); } void MainWindow::btnNextClicked() { bool valid = true; QList<WidgetPertanyaan *>list = widgetListPertanyaan>findChildren<WidgetPertanyaan *>("WidgetPertanyaan"); for(int i = 0; i < list.count(); i++) { WidgetPertanyaan *question = list.at(i); if(question->CheckRadioEmpty()) { valid = false; } } if(valid) { this->UpdateResult(); this->CurrPage = this->CurrPage + 1; delete widgetListPertanyaan; GetPertanyaan(); QScrollBar *scrollBar = this->ui->scrollArea_3->verticalScrollBar(); scrollBar->setSliderPosition(scrollBar->minimum()); } else { widgetListPertanyaan->ErrorMessage(); } } void MainWindow::btnSubmitClicked() { bool valid = true; QList<WidgetPertanyaan *>list = widgetListPertanyaan>findChildren<WidgetPertanyaan *>("WidgetPertanyaan");
L86
for(int i = 0; i < list.count(); i++) { WidgetPertanyaan *question = list.at(i); if(question->CheckRadioEmpty()) { valid = false; } } if(valid) { this->UpdateResult(); this->dbhistorytes->InsertHistoryTes(resultPeminatan, this->NIM); delete widgetListPertanyaan; this->widgetAlert = new WidgetAlert(); this->widgetAlert->cetak(this->NIM); this->ui->verticalLayoutContent->addWidget(widgetAlert); this->ui->pushButton->hide(); this->ui->lblPage->hide(); this->flagAlert = true; } else { widgetListPertanyaan->ErrorMessage(); } }
void MainWindow::UpdateResult() { double answerWeight = 0; QList<WidgetPertanyaan *>list = widgetListPertanyaan>findChildren<WidgetPertanyaan *>("WidgetPertanyaan"); for(int i = 0, k = (CurrPage - 1) * 10; i < list.count(); i++, k++) { WidgetPertanyaan *question = list.at(i); if(question->IsRadioYes()) { answerWeight = (double)1/ this->dbpertanyaan>CountJmlPertanyaanByKecerdasan(this->listPertanyaan.at(k)->idkecerdasan);
L87
for(int j = 0; j < resultPeminatan.count(); j++) { int currIdKec = this->listPertanyaan.at(k)->idkecerdasan.value(); double temp = answerWeight * originPeminatan.at(j)>dataKecerdasan.at(currIdKec - 1)->weight.value<double>(); resultPeminatan.at(j)->dataKecerdasan.at(currIdKec - 1)->weight = resultPeminatan.at(j)->dataKecerdasan.at(currIdKec - 1)->weight.value<double>() + temp; } } } } void MainWindow::setNIM(QString nimVal) { this->NIM = nimVal; this->ui->lblUser->setText("Welcome, " + this->NIM); } void MainWindow::GetAllHistory() { this->listHistory = this->dbhistorytes->GetAllHistoryTes(this->NIM); QString hasil; int counter = 0; this->widgetListHistory = new WidgetListHistory(); for(int i = 0; i<listHistory.count(); i++) { counter ++; QString c; hasil += "Hasil Peminatan " + listHistory.at(i)->namaPeminatan.toString() + " : " + c.sprintf("%.2f",listHistory.at(i)->hasil.toDouble()) + " %\n"; if(counter == 7) { this->widgetHistory = new WidgetHistory(); this->widgetHistory->Cetak(listHistory.at(i)->tanggal.toString(), hasil); this->widgetListHistory->AddWidgetHistory(widgetHistory); hasil.clear();
L88
counter = 0; } } this->ui->verticalLayoutContent->addWidget(widgetListHistory); } widgetalert.cpp #include "widgetalert.h" #include "ui_widgetalert.h" WidgetAlert::WidgetAlert(QWidget *parent) : QWidget(parent), m_ui(new Ui::WidgetAlert) { m_ui->setupUi(this); } WidgetAlert::~WidgetAlert() { delete m_ui; } void WidgetAlert::cetak(QString NIM) { QList listHistoryTes = this->dbHistoryTes>GetCurrentHistoryTes(NIM); QString res; res = "Rekomendasi Peminatan : \n"; for(int i = 0; i < 3; i++) { QString c; res += c.sprintf("%d. ", i + 1) + listHistoryTes.at(i)->namaPeminatan.toString() + " : " + c.sprintf("%.2f",listHistoryTes.at(i)->hasil.toDouble()) + " %\n"; } this->m_ui->lblPesan->setText(res); } Widgethistory.cpp #include "widgethistory.h" #include "ui_widgethistory.h"
L89
WidgetHistory::WidgetHistory(QWidget *parent) : QWidget(parent), m_ui(new Ui::WidgetHistory) { m_ui->setupUi(this); } void WidgetHistory::Cetak(QString tanggal, QString hasil) { this->m_ui->lblDate->setText(tanggal); this->m_ui->lblHasil->setText(hasil); } WidgetHistory::~WidgetHistory() { delete m_ui; } widgetinfopeminatan.cpp #include "widgetinfopeminatan.h" #include "ui_widgetinfopeminatan.h" WidgetInfoPeminatan::WidgetInfoPeminatan(QWidget *parent) : QWidget(parent), m_ui(new Ui::WidgetInfoPeminatan) { m_ui->setupUi(this); this->listPeminatan = this->dbpeminatan->GetDataPeminatan(); this->m_ui->textEditSE->setText(listPeminatan.at(0)->keterangan.toString()); this->m_ui->textEditDB->setText(listPeminatan.at(4)->keterangan.toString()); this->m_ui->textEditAI->setText(listPeminatan.at(5)->keterangan.toString()); this->m_ui->textEditNW->setText(listPeminatan.at(6)->keterangan.toString()); this->m_ui->textEditMM->setText(listPeminatan.at(3)->keterangan.toString()); this->m_ui->textEditOR->setText(listPeminatan.at(2)->keterangan.toString()); this->m_ui->textEditCI->setText(listPeminatan.at(1)->keterangan.toString()); this->m_ui->textEditSE->setReadOnly(true); this->m_ui->textEditDB->setReadOnly(true); this->m_ui->textEditAI->setReadOnly(true); this->m_ui->textEditNW->setReadOnly(true); this->m_ui->textEditMM->setReadOnly(true); this->m_ui->textEditOR->setReadOnly(true);
L90
this->m_ui->textEditCI->setReadOnly(true); this->m_ui->tabWidget->setCurrentIndex(0); } WidgetInfoPeminatan::~WidgetInfoPeminatan() { delete m_ui; } widgetlisthistory.cpp #include "widgetlisthistory.h" #include "ui_widgetlisthistory.h" WidgetListHistory::WidgetListHistory(QWidget *parent) : QWidget(parent), m_ui(new Ui::WidgetListHistory) { m_ui->setupUi(this); } WidgetListHistory::~WidgetListHistory() { delete m_ui; } void WidgetListHistory::AddWidgetHistory(WidgetHistory *widgetHistory) { this->m_ui->verticalLayout->addWidget(widgetHistory); } widgetlistpertanyaan.cpp #include "widgetlistpertanyaan.h" #include "ui_widgetlistpertanyaan.h" WidgetListPertanyaan::WidgetListPertanyaan(QWidget *parent) : QWidget(parent), ui(new Ui::WidgetListPertanyaan) { ui->setupUi(this); }
L91
WidgetListPertanyaan::~WidgetListPertanyaan() { delete ui; } void WidgetListPertanyaan::FillQuestion(QVariant no, QVariant idSoal, QString soal) { WidgetPertanyaan *temp = new WidgetPertanyaan(); temp->FillQuestion(no, idSoal, soal); this->ui->verticalLayout->addWidget(temp); } void WidgetListPertanyaan::ErrorMessage() { this->ui->labelError->setText("Data harus diisi semua."); } widgetpertanyaan.cpp #include "widgetpertanyaan.h" #include "ui_widgetpertanyaan.h" WidgetPertanyaan::WidgetPertanyaan(QWidget *parent) : QWidget(parent), m_ui(new Ui::WidgetPertanyaan) { m_ui->setupUi(this); m_ui->radioButtonYes->setChecked(true); m_ui->labelAsterisk->setVisible(false); } WidgetPertanyaan::~WidgetPertanyaan() { delete m_ui; } void WidgetPertanyaan::FillQuestion(QVariant no, QVariant idSoal, QString soal) { this->m_ui->lblID->setText(idSoal.toString()); this->m_ui->lblNo->setText(no.toString().append(".")); this->m_ui->webView->setHtml(soal);
L92
} bool WidgetPertanyaan::CheckRadioEmpty() { if(!this->m_ui->radioButtonYes->isChecked() && !this->m_ui->radioButtonNo>isChecked()) { this->m_ui->labelAsterisk->setVisible(true); return true; } else { this->m_ui->labelAsterisk->setVisible(false); return false; } } bool WidgetPertanyaan::IsRadioYes() { if(this->m_ui->radioButtonYes->isChecked()) return true; else return false; } widgetquestion.cpp #include "widgetquestion.h" #include "ui_widgetquestion.h" WidgetQuestion::WidgetQuestion(QWidget *parent) : QWidget(parent), ui(new Ui::WidgetQuestion){ ui->setupUi(this);} WidgetQuestion::~WidgetQuestion(){ delete ui;} void WidgetQuestion::fillQuestion(QString soal) { // this->m_ui->webViewQuestion->setHtml(soal); }