tuoi = "31"; if String.ToNumbertuoi > 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
Trang 1tuoi = "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
Trang 2require: 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
Trang 3đ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
Trang 4II.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);
Trang 5Thờ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);