首頁寵物 > 正文

大強學易之年終聚會,就用這個來抽獎啦!

2021-04-12由 大強小屋 發表于 寵物

本期要點

學習陣列的操作,熟悉列表框的使用。(微信搜尋“大強小屋”,ID:daqiangstudio,感謝關注支援)

請關注微信公眾號【大強小屋】(ID:daqiangstudio),更多精彩內容等著你。

公司慶典、社團年會、各種聚會,少不了使用抽獎環節來營造氣氛,大屏滾動抽獎就派上了用場。本期我們就來寫一個大屏抽獎的程式。

首先在視窗中放置一個編輯框和一個按鈕,用來模擬大屏上滾動的手機號;放兩個列表框,一個用來放置抽出來的中獎手機號,一個用來存放原始的準備被抽獎的手機號。由於我們是模擬抽獎,所以先自動生成100個模擬手機號,放在待抽獎的列表框裡。點選按鈕,編輯框滾動顯示手機號的前三位與後四位,中間四位用“*”代替,最終中獎的號碼顯示在中獎列表框裡。我們這樣做的目的是,在抽獎完畢之後可以進行核對,以確定所有中獎號碼都在備選手機號中,以免有人以為抽獎是暗箱操作。具體程式碼,請點選影片。

相關命令

呼叫格式:〈整數型〉 取隨機數 ([整數型 欲取隨機數的最小值],[整數型 欲取隨機數的最大值]) - 系統核心支援庫->算術運算

英文名稱:rnd

返回一個指定範圍內的隨機數值。在使用本命令取一系列的隨機數之前,應該先使用“置隨機數種子”命令為隨機數生成器初始化一個種子值。本命令為初級命令。

引數的名稱為“欲取隨機數的最小值”,型別為“整數型(int)”,可以被省略。引數必須大於或等於零。本引數如果被省略,預設為 0 。

引數的名稱為“欲取隨機數的最大值”,型別為“整數型(int)”,可以被省略。引數必須大於或等於零。本引數如果被省略,預設為無限。

作業系統需求:Windows、Linux

呼叫格式:〈無返回值〉 置隨機數種子 ([整數型 欲置入的種子數值]) - 系統核心支援庫->算術運算

英文名稱:randomize

為隨機數生成器初始化一個種子值,不同的種子值將導致“取隨機數”命令返回不同的隨機數系列。本命令為初級命令。

引數的名稱為“欲置入的種子數值”,型別為“整數型(int)”,可以被省略。如果省略本引數,將預設使用當前計算機系統的時鐘值。

作業系統需求:Windows、Linux

呼叫格式:〈無返回值〉 變數迴圈首 (整數型 變數起始值,整數型 變數目標值,整數型 變數遞增值,[整數型變數 迴圈變數]) - 系統核心支援庫->流程控制

英文名稱:for

執行本命令將利用變數對迴圈體內的命令進行迴圈執行。第一次執行此命令時將使用“變數起始值”引數初始化“迴圈變數”引數所指定的變數。每次(包括第一次)執行到此命令處都將判斷迴圈變數內的值是否已經超過“變數目標值”引數所指定的值,如已超過,則跳轉到對應的“變數迴圈尾”命令的下一條命令處繼續執行,否則順序執行下一條語句繼續進行迴圈。本命令為初級命令。

引數的名稱為“變數起始值”,型別為“整數型(int)”,初始值為“1”。定義迴圈變數的起始數值。

引數的名稱為“變數目標值”,型別為“整數型(int)”。定義迴圈變數的目標數值,在迴圈首部如果發現變數值已超出此目標值時將跳出迴圈。

引數的名稱為“變數遞增值”,型別為“整數型(int)”,初始值為“1”。每次執行到迴圈尾部時都將把此值加入到迴圈變數中去,此值可為正數或負數,如為正數則遞增,為負數則遞減。

引數的名稱為“迴圈變數”,型別為“整數型(int)”,可以被省略,提供引數資料時只能提供變數。本數值型變數將用作控制迴圈執行次數,在迴圈尾部將自動遞增或遞減該變數內的數值。如果被省略,命令將自動使用內部臨時變數。

作業系統需求:Windows、Linux、Unix

〈對應命令〉:

呼叫格式:〈無返回值〉 變數迴圈尾 () - 系統核心支援庫->流程控制

英文名稱:next

本命令已經被隱藏。

將在對應的“變數迴圈首”命令中所指定的數值變數遞增或遞減指定的值後返回到迴圈首部繼續執行。本命令為初級命令。

作業系統需求:Windows、Linux、Unix

呼叫格式:〈無返回值〉 計次迴圈首 (整數型 迴圈次數,[整數型變數 已迴圈次數記錄變數]) - 系統核心支援庫->流程控制

英文名稱:counter

執行本命令將把迴圈體內的命令重複執行指定的次數。提供的整數引數值決定將重複執行的次數。本命令為初級命令。

引數的名稱為“迴圈次數”,型別為“整數型(int)”。本數值指定執行計次迴圈體內所有命令的次數,必須大於等於零。

引數的名稱為“已迴圈次數記錄變數”,型別為“整數型(int)”,可以被省略,提供引數資料時只能提供變數。本數值型變數用作記錄當前迴圈首已經被進入過的次數(從 1 開始),程式可以直接取用此變數中的值。

作業系統需求:Windows、Linux、Unix

〈對應命令〉:

呼叫格式:〈無返回值〉 計次迴圈尾 () - 系統核心支援庫->流程控制

英文名稱:CounterLoop

本命令已經被隱藏。

如果計次迴圈的迴圈次數未到,執行本命令將返回到對應的“計次迴圈首”命令處繼續進行迴圈,否則將順序執行下一條命令退出本計次迴圈。本命令為初級命令。

作業系統需求:Windows、Linux、Unix

呼叫格式:〈無返回值〉 重定義陣列 (通用型變數陣列 欲重定義的陣列變數,邏輯型 是否保留以前的內容,整數型 陣列對應維的上限值,。。。 ) - 系統核心支援庫->陣列操作

英文名稱:ReDim

本命令可以重新定義指定陣列的維數及各維的上限值。本命令為初級命令。命令引數表中最後一個引數可以被重複新增。

引數的名稱為“欲重定義的陣列變數”,型別為“通用型(all)”,提供引數資料時只能提供變數陣列。

引數的名稱為“是否保留以前的內容”,型別為“邏輯型(bool)”,初始值為“假”。

引數的名稱為“陣列對應維的上限值”,型別為“整數型(int)”。

作業系統需求:Windows、Linux、Unix

呼叫格式:〈整數型〉 取陣列成員數 (通用型變數/變數陣列 欲檢查的變數) - 系統核心支援庫->陣列操作

英文名稱:GetAryElementCount

取指定陣列變數的全部成員數目,如果該變數不為陣列,返回-1,因此本命令也可以用作檢查指定變數是否為陣列變數。本命令為初級命令。

引數的名稱為“欲檢查的變數”,型別為“通用型(all)”,提供引數資料時只能提供變數及變數陣列。引數值指定欲檢查其成員數目的陣列變數或者欲檢查其是否為陣列的變數。

作業系統需求:Windows、Linux、Unix

呼叫格式:〈無返回值〉 加入成員 (通用型變數陣列 欲加入成員的陣列變數,通用型陣列/非陣列 欲加入的成員資料) - 系統核心支援庫->陣列操作

英文名稱:AddElement

將資料加入到指定陣列變數的尾部,並透過重新定義陣列維數自動增加其成員數目。陣列變數如為多維陣列,加入完畢後將被轉換為單維陣列。本命令為初級命令。

引數的名稱為“欲加入成員的陣列變數”,型別為“通用型(all)”,提供引數資料時只能提供變數陣列。

引數的名稱為“欲加入的成員資料”,型別為“通用型(all)”,提供引數資料時可以同時提供陣列或非陣列資料。引數值所指定成員資料的資料型別必須能夠與第一個引數所指定的陣列變數相匹配。

作業系統需求:Windows、Linux、Unix

呼叫格式:〈整數型〉 刪除成員 (通用型變數陣列 欲刪除成員的陣列變數,整數型 欲刪除的位置,[整數型 欲刪除的成員數目]) - 系統核心支援庫->陣列操作

英文名稱:RemoveElement

刪除指定陣列變數中的成員,並透過重新定義陣列維數自動減少其成員數目。陣列變數如為多維陣列,刪除完畢後將被轉換為單維陣列。返回所實際刪除的成員數目。本命令為初級命令。

引數的名稱為“欲刪除成員的陣列變數”,型別為“通用型(all)”,提供引數資料時只能提供變數陣列。

引數的名稱為“欲刪除的位置”,型別為“整數型(int)”。位置值從 1 開始,如果小於 1 或大於第一個引數所指定陣列變數的成員數目,將不會刪除任何資料。

引數的名稱為“欲刪除的成員數目”,型別為“整數型(int)”,可以被省略。本引數如果被省略,預設為 1 。

作業系統需求:Windows、Linux、Unix

頂部