tuoi = "31"; if String.ToNumber(tuoi) > then Dialog.Message("", "Ban lon hơn 18 tuoi."); end Một cách khác để chương trình chuyển giá trị của bạn từ dạng chuỗi sang dạng số là chúng ta dùng một biểu thức toán học để kích thích chương trình để chương trình hiểu rằng bạn muốn dùng giá trị của dạng chuỗi này dưới dạng số để có thể dễ dàng tính toán. tuoi = "31" + ; Sau phép toán trên bạn có thể dùng chuỗi của mình như một giá trị số để có thể tính toán bình thường.Ví như cũng ví dụ trên chúng ta có thể khai báo dưới dạng như sau, mà không cần dùng đến lệnh String.ToNumber: tuoi = "31"; if (tuoi + ) > then Dialog.Message("", "Ban lon hon 18 tuoi 18."); end Với các khai báo như trên chương trình sẽ nhận được giá trị của bạn tính toán được nên chuyển chúng về dạng số .Vì vậy biểu thức trên của chúng ta sẽ đúng và chương trình sẽ không thông báo lỗi. 9. Cách tạo các chương trình con đặc biệt: Đó là những chương trình con được bạn khai báo dưới dạng một tập tin,hay một cấu trúc thư viện cho sẵn.Có ba cách để khai báo chương trình con này :Đó là các lệnh dofile,require,và type. dofile: Dùng để chạy những file mẫu hay những file thư viện đã được bạn gài sẵn.Và khi bạn muốn nhập Hàm bạn chỉ cần nhập như sau: dofile(file_path) –file_path chính là đường dẫn đến file thư viện mà bạn đã làm sẵn. Sau đây là một ví dụ minh họa:Tôi tạo ra một đoạn mã và sao lưu nó dưới dạng một file thư viện MyScript.lua (Bạn có thể dùng chương trình Autoplay hay chương trình Notepad để tạo ra file trên) có nội dung như sau: Dialog.Message("Xin chao", "Cloud2342"); …và mỗi khi chúng ta cần dùng đến dòng lệnh trên một lần nữa thì chúng ta chỉ cần nhập file thư viện đó vào trong phần nhập mã của bạn bằng dòng lệnh sau: dofile("AutoPlay\\Scripts\\MyScript.lua"); trong trường hợp này chương trình sẽ đọc file thư viện của bạn và nhập những thông tin của file thư viện đó vào trong phần soạn mã của bạn .Sau đó chương trình sẽ thực thi những đoạn mã mà bạn đã xác nhập. Điều này giúp bạn tiết kiệm được thời gian đồng thời tạo cho bạn thói quen lưu trữ những đoạn mã hay và những Hàm có giá trí để có thể dùng đến khi cần.Tuy nhiêm nếu muốn thay đổi nội dung thông tin,thì bạn cần thay đổi trong phần soạn thảo của file thư viện. require: Lệnh này dùng để đọc vào nhập các đoạn mã vào trong phần soạn thảo. Nó cũng có chức năng tương tự như lệnh dofile nhưng trừ một điều là nó chỉ chạy một lần với một mục đích nhất định vào bạn không thể gọi lại Hàm được chèn trong tương lai.Còn lệnh dofile thì ngược lại,những giá trị được bạn liệt vào sẽ được chương trình ghi nhớ rất kĩ và bạn có thể chạy lại chúng bất cứ khi nào bạn muốn. Ví dụ như các dòng lệnh sau đây: require("AutoPlay\\Scripts\\foo.lua"); require("AutoPlay\\Scripts\\foo.lua"); Dòng này sẽ không thực thi. Các dòng lệnh trên chỉ thực thi duy nhất một lần nên khi bạn gọi lại thì chương trình sẽ không nhận và không thực thi lệnh.Điều này rất hữu ích nếu trong trường hợp bạn chỉ muốn nhập lệnh đó một lần vào không muốn chạy lại thêm một lần nào nữa. type: Lệnh này dùng để gán giá trị cho một biến mà bạn muốn xác lập.Và bạn có thể quy định những biến của bạn những giá trị thích hợp không bắt buộc chương trình phải “tự hiểu”.Chúng ta có dạng giá trị gồm “nil”(dạng rỗng), “Number” (Dạng số), “string” (Dạng chuỗi), “Boolean” (Dạng logic), “Table” (Dạng bảng), và cuối cùng là dạng “function” (Dạng Hàm) Sau đây là một số ví dụ minh họa: 10. Cách sửa chữa các loại lỗi: Trong khi lập trình dù bạn dùng bất cứ ngôn ngữ lập trình nào ,việc bạn gặp phải lỗi là điều không thể tránh khỏi.Tuy nhiên với những lỗi đó chúng ta cần khắc phục như thế nào để không ảnh hưởng đến đoạn mã của mình mới là điều bạn cần lưu tâm. Trước tiên chúng ta cần tìm hiểu các lỗi nào bạn thường gặp để tìm ra hướng giải quyết nhanh nhất khi gặp phải nó. Lỗi về điều khiển Tất cả các phiên bản của Autoplay đều có thể mắt phải lỗi điều khiển.Lý do mắt lỗi này thường là do bạn khai báo Hàm có sự xung đột lẫn nhau làm chương trình của bạn mất định hướng, thứ hai là những đoạn mã được bạn viết ra chương trình không đáp ứng hết được (Nó chỉ là một phần của một công cụ lập trình thôi mà).Lỗi này thường rất ít gặp nhưng nếu gặp bạn sẽ tốn rất nhiều công sứ để gia cố lại chúng. Tuy nhiên bạn thường ít gặp lỗi này so với lỗi về cú pháp hay về Hàm Lỗi về cú pháp Đây là lỗi mà bạn dễ mắt phải nhất.Khi bạn khi báo giá tri không trùng khớp hay những giá trị bạn khai báo bị thiếu ,thường là do chương trình không hiểu được đoạn mã của bạn.Vì vậy bạn cần chú ý câu chữ mỗi khi biên soạn các đoạn mã để tránh trường hợp “Ông nói gà,bà nói vịt” Sau đây là một số ví dụ về những lỗi này: sai = Trong dòng mã trên chúng ta đã gặp phải một lỗi cú pháp rất trầm trọng.Chúng ta đã không khai báo hết giá trị của một dòng mã .Vì sau mỗi dấu bằng thường được gán một giá trị,nhưng tại đây ban để trống. Tiếp theo chúng ta sẽ đến với một đoạn mã lỗi khác,mà chúng ta cũng thường hay gặp đó là: Dialog.Message("Hi There"); Trông thì có vẻ như đoạn mã này đúng.Nhưng bạn thấy đấy,bạn khai báo thiếu đối số trong dòng lệnh Dialog.Message.Lúc này chương trình không hiểu được thông số bạn nhập vào thuộc loại nào nên chúng báo lỗi. Trong dòng lệnh này,bạn cần nhập thêm một đối số nữa,để chương trình nhận đủ thông số để có thể chạy lệnh.Nếu không chúng sẽ không hiểu bạn muốn nói với chúng điều gì. Chú ý nếu trong các dòng lệnh có nhiều đối số,bạn nên khai những đối số cần thiết , không nhất phải khai tất cả. Giống như trong dòng lệnh Dialog.Message bạn có đến 5 đối số: Một số đối số trong lệnh trên đã được chương trình mặt định lựa chọn nếu bạn để trống. Còn những thống số còn lại không mặt định bạn cần khai báo đầy đủ.Đây chính là những thông số cần thiết. Lỗi về Hàm Trong các lỗi đây là một trong những lỗi khó chịu nhất,bạn có thể dễ dàng nhận thấy lỗi này nhưng nếu dùng để khắc phục thì hơi phức tạp.Để tránh những lỗi này bạn cần cận thận trong việc khai báo Hàm,đồng thời nhớ điền đúng tên Hàm vì đây rất quan trong và ảnh hưởng rất lớn đến nhừng gì bạn thiết lập . Nhớ kiểm tra những tham số của Hàm để có thể tránh trường hợp điền những thông số không phù hợp với yêu cầu bạn đặt ra . 1.Audio player I.Điểm nhấn của trình Audio Player do Auto Media Studio 6.0 tạo ra chính là -Gọn nhẹ ,đẹp mắt -chơi được các định dạng file mà AMS hỗ trợ : *ogg, *wav,*aif,*aiff,*raw II.Nét đặc biệt để tạo ra trình nghe nhạc này Đó chính là : Dòng Text chuyển động Đồng hồ đếm ngược thời gian Nút Load File Nút Volume Up và Volume Down Còn về nút Play ,Pause ,Stop thì quá dễ dàng 1.Dòng Text chuyển động và đông hồ đếm ngược thời gian Thưc chất dòng text chuyển động “NOW PLAYING” và đồng hồ đếm ngược “0.00 sec” là 2 Paragraph File Đó là nhờ cấu trúc lệnh sau Ở Phần Properties của Background Page ta thấy tại thẻ Onshow và thẻ Ontimer a/Tại thẻ Onshow Có 3 dòng lệnh sau: Audio.Load(CHANNEL_USER1, "AutoPlay\\Audio\\loop.ogg", true, true); Audio.SetVolume(CHANNEL_USER1, 210); title = " NOW PLAYING - \"HAPPY GROOVE\" - BY INDIGO ROSE SOFTWARE -"; Page.StartTimer(151); Những đối tượng màu hồng là chúng ta có thể thay đổi chúng theo ý mình Ta hãy phân tích từng dòng nhé: *Audio.Load(CHANNEL_USER1, "AutoPlay\\Audio\\loop.ogg", true, true); -Audio.Load : khởi động File Âm thanh -CHANNEL_USER1 : chọn đối tượng 1 ( mà ở đây là file âm thanh) -"AutoPlay\\Audio\\loop.ogg" : đường dẫn đến file mà bạn chọn -PlayAutomatic: chọn true là tự động chơi khi khởi động chương trình -Loop : chọn true là để chơi lại file audio.load -Audio.SetVolume(CHANNEL_USER1, 210); Ở đây là chọn độ lớn vê âm lượng .giá trị được chọn là 210 ( mức nomal) -title = " NOW PLAYING - \"HAPPY GROOVE\" - BY INDIGO ROSE SOFTWARE -"; Nội dung của đoạn text chuyển động-bạn có thể thay đổi theo ý mình -Page.StartTimer(151); Thời gian để dòng text chuyển động ( cái này có liên quan đến thẻ Ontimer) b/tại thẻ Ontimer: Có 21 dòng: set time display curTime = Math.Round(Audio.GetCurrentPos(CHANNEL_USER1), 2); if String.Find(curTime, ".", 1, false)==-1 then curTime = String.Concat(curTime, "."); end decPos = String.Find(curTime, ".", 1, false); strLen = String.Length(curTime); zerosNeeded = 2 - (strLen - decPos); if zerosNeeded > 0 then for count = 1, zerosNeeded do curTime = curTime "0"; end end Paragraph.SetText("Paragraph1", curTime); set "now playing" display myChar = String.Left(title, 1); title = String.Right(title, (String.Length(title)-1)); title = title myChar; titleText = String.Left(title, 20); Paragraph.SetText("Paragraph2", titleText); Chữ xanh là những cấu trúc lệnh đã được nhắc đến ở phần lý thuyết Còn chữ mà hồng chính là tên Object name của dòng text chuyển động “NOW PLAYING” và đồng hồ đếm ngược “0.00 sec” Bạn hoàn toàn có thể thay đổi chúng theo ý mình 2.Nút Load File : Tại thẻ Onclick ta thấy Có 8 Code sau: audioFile = Dialog.FileBrowse(true, "Open File", _DesktopFolder, "Audio Files (.ogg, .wav, .aif, .aiff, .raw )|*.ogg;*.wav;*.aif;*.aiff;*.raw|", "", "", false, true); if (audioFile[1] ~= "CANCEL") then Audio.Load(CHANNEL_USER1, audioFile[1], true, false); . tuoi = " ;31& quot;; if String.ToNumber(tuoi) > then Dialog.Message("", "Ban lon hơn 18. bạn muốn dùng giá trị của dạng chuỗi này dưới dạng số để có thể dễ dàng tính toán. tuoi = " ;31& quot; + ; Sau phép toán trên bạn có thể dùng chuỗi của mình như một giá trị số để có thể tính. ta có thể khai báo dưới dạng như sau, mà không cần dùng đến lệnh String.ToNumber: tuoi = " ;31& quot;; if (tuoi + ) > then Dialog.Message("", "Ban lon hon 18 tuoi 18.");