Чтение онлайн

на главную - закладки

Жанры

Программирование мобильных устройств на платформе .NET Compact Framework

Салмре Иво

Шрифт:

 //==========================================================

 static public void InitializeGameVocabulary {

//Создать новый массив списков для хранения наших слов

m_vocabularyWords_All = new System.Collections.ArrayList;

m_vocabularyWords_Nouns = new System.Collections.ArrayList;

m_vocabularyWords Verbs = new System.Collections.ArrayList;

m_vocabularyWords_Adjectives = new System.Collections.ArrayList;

m_vocabularyWords_Adverbs = new System.Collections.ArrayList;

m_vocabularyWords_Prepositions = new System.Collections.ArrayList;

System.Data.IDataReader dataReader;

dataReader = DatabaseAccess.GetListOfWords;

VocabularyWord newWord;

//Обойти все записи

while (dataReader.Read) {

//Поместить данные для только что считанного слова в класс

newWord = new VocabularyWord(

dataReader.GetString(DatabaseAccess.DS_WORDS_COLUMNINDEX_ENGLISHWORD),

dataReader.GetString(DatabaseAccess.DS_WORDS COLUMNINDEX_GERMANWORD),

(VocabularyWord.WordGender)dataReader.GetInt32(DatabaseAccess.DS_WORDS_COLUMNINDEX_GERMANGENDER),

(VocabularyWord.WordFunction)dataReader.GetInt32(DatabaseAccess.DS_WORDS_COLUMNINDEX_WORDFUNCTION));

//Добавить новое слово в массив списков

m_vocabularyWords_All.Add(newWord);

//Слова могут принадлежать нескольким группам, поэтому необходимо

//выполнить проверку с использованием операции логического И

//для проверки того, что слово относится к данной категории

if ((newWord.getWordFunction & VocabularyWord.WordFunction.Noun) ! = 0) {

m_vocabularyWords_Nouns.Add(newWord);

}

if ((newWord.getWordFunction & VocabularyWord.WordFunction.Verb) != 0) {

m_vocabularyWords_Verbs.Add(newWord);

}

if ((newWord.getWordFunction & VocabularyWord.WordFunction.Adjective) != 0) {

m_vocabularyWords Adjectives.Add(newWord);

}

if ((newWord.getWordFunction & VocabularyWord.WordFunction.Adverb) != 0) {

m_vocabularyWords Adverbs.Add(newWord);

}

if ((newWord.getWordFunction & VocabularyWord.WordFunction.Preposition) != 0) {

m_vocabularyWords_Prepositions.Add(newWord);

}

}

//Закрыть объект

DataReader dataReader.Close;

 }

} //Конец класса

Листинг 14.8. Пример кода управления данными для VocabularyWord.cs

using System;

//------------------------------

//Хранит данные слова из словаря

//------------------------------

internal class VocabularyWord {

 [System.FlagsAttribute] //Значения можно объединять с помощью операции

//логического ИЛИ

 public enum WordFunction {

Noun = 1,

Verb = 2,

Pronoun = 4,

Adverb = 8,

Adjective = 16,

Preposition = 32,

Phrase = 64

 }

 public enum WordGender {

notApplicable = 0,

Masculine = 1,

Feminine = 2,

Neuter = 3,

 }

 private string m_englishWord;

 private string m_germanWord;

 private VocabularyWord.WordGender m_germanGender;

 private VocabularyWord.WordFunction m_wordFunction;

 public string EnglishWord{

get {

return m_englishWord;

}

 }

 public string GermanWord{

get {

return m_germanWord;

}

 }

 public WordFunction getWordFunction {

get {

return m_wordFunction;

}

 }

 public WordGender GermanGender{

get {

return m_germanGender;

}

 }

 //-----------------------------------------------------------------

 //Возвращает слово на немецком языке, которому предшествует артикль

 //{например, 'der', 'die', 'das'), если он существует

Поделиться:
Популярные книги

Законы рода

Мельник Андрей
1. Граф Берестьев
Фантастика:
фэнтези
боевая фантастика
аниме
5.00
рейтинг книги
Законы рода

Обрыв

Гончаров Иван Александрович
Проза:
классическая проза
русская классическая проза
8.93
рейтинг книги
Обрыв

Газлайтер. Том 18

Володин Григорий Григорьевич
18. История Телепата
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Газлайтер. Том 18

Я еще не барон

Дрейк Сириус
1. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я еще не барон

Локки 5. Потомок бога

Решетов Евгений Валерьевич
5. Локки
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Локки 5. Потомок бога

Лекарь Империи 10

Карелин Сергей Витальевич
10. Лекарь Империи
Фантастика:
городское фэнтези
боевая фантастика
аниме
попаданцы
5.00
рейтинг книги
Лекарь Империи 10

Адвокат империи

Карелин Сергей Витальевич
1. Адвокат империи
Фантастика:
городское фэнтези
попаданцы
фэнтези
5.75
рейтинг книги
Адвокат империи

Газлайтер. Том 6

Володин Григорий
6. История Телепата
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Газлайтер. Том 6

Князь Целитель 3

Ткачев Андрей Юрьевич
3. Князь Целитель
Фантастика:
боевая фантастика
городское фэнтези
аниме
фэнтези
5.00
рейтинг книги
Князь Целитель 3

Лекарь Империи 6

Карелин Сергей Витальевич
6. Лекарь Империи
Фантастика:
городское фэнтези
боевая фантастика
аниме
попаданцы
5.00
рейтинг книги
Лекарь Империи 6

Кукловод

Майерс Александр
4. Династия
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Кукловод

Ермак. Телохранитель

Валериев Игорь
2. Ермак
Фантастика:
альтернативная история
7.50
рейтинг книги
Ермак. Телохранитель

Камень. Книга пятая

Минин Станислав
5. Камень
Фантастика:
боевая фантастика
6.43
рейтинг книги
Камень. Книга пятая

Локки 8. Потомок бога

Решетов Евгений Валерьевич
8. Локки
Фантастика:
фэнтези
боевая фантастика
героическая фантастика
попаданцы
5.00
рейтинг книги
Локки 8. Потомок бога