|
0 / 0 / 0
Регистрация: 16.08.2016
Сообщений: 9
|
||||||
Передача текста в кнопку16.08.2016, 20:59. Показов 611. Ответов 14
Метки нет (Все метки)
Всем привет.
Сейчас пытаюсь сделать свое первое приложение, и выбор пал на судоку. Решил создать поле под судоку из 81 кнопки, и 9 кнопок под передачу значений в выбранные кнопки на поле. И вот столкнулся с такой проблемой, код ниже не хочет передавать значение в кнопку. Как я понял, проблема в массиве. Помогите решить данную проблему.
0
|
||||||
| 16.08.2016, 20:59 | |
|
Ответы с готовыми решениями:
14
передача переменной из поля ввода текста в кнопку... [MFC] Передача текста в MDI окно, чтение текста из окна
|
|
Модератор
3407 / 2178 / 354
Регистрация: 13.01.2012
Сообщений: 8,448
|
|
| 17.08.2016, 08:59 | |
|
NikBobkov, 1 если вы используете <= вы выйдите за границу массива 2 что в массиве?
0
|
|
|
0 / 0 / 0
Регистрация: 16.08.2016
Сообщений: 9
|
|
| 17.08.2016, 09:27 [ТС] | |
|
Это массив типа Button. Как я понял, он не хочет воспринимать такую masBut[i].getId(); или такую masBut[i].setText("1"); конструкцию. Однако оно будет работать если вместо masBut[i] вставить конкретный объект массива, например, b1.getId();
И вот хочу узнать, можно ли это как-то обойти, или все же придется перебирать каждый элемент массива вручную?
0
|
|
|
Модератор
3407 / 2178 / 354
Регистрация: 13.01.2012
Сообщений: 8,448
|
|
| 17.08.2016, 10:07 | |
|
NikBobkov, если в массиве действительно кнопки то смотрите с чем вы их сравниваете - что в idBut?
0
|
|
|
0 / 0 / 0
Регистрация: 16.08.2016
Сообщений: 9
|
|
| 17.08.2016, 10:52 [ТС] | |
|
В idBut при нажатии на кнопку я записываю ее id благодаря вот этой конструкции idBut = b1.getId();
Вместо b1 может быть любая другая кнопка. Затем при нажатие на другую кнопку с помощью цикла я пролистываюсь по массиву кнопок сравнивая их id c idBut, и если они равны, то передаю в первую кнопку определенный текст. Так как я делаю судоку, покажу на примере. Я нажимаю на любую кнопку игрового поля, а затем с помощью нижних кнопок заношу туда определенное число.
0
|
|
|
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
|
| 17.08.2016, 10:56 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 16.08.2016
Сообщений: 9
|
||
| 17.08.2016, 11:04 [ТС] | ||
|
И я уже выше сказал, что оно будет работать если вместо masBut[i].getId(); написать конкретный объект массива, например, b1.getId(); То есть заменив masBut[i].getId(); и masBut[i].setText("1"); на b1.getId(); и b1.setText("1"); соответственно, оно будет работать, только тогда в цикле отпадает надобность и просто приходится вручную все кнопки сравнивать.
0
|
||
|
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
|||
| 17.08.2016, 11:06 | |||
|
0
|
|||
|
0 / 0 / 0
Регистрация: 16.08.2016
Сообщений: 9
|
||||||
| 17.08.2016, 11:24 [ТС] | ||||||
Я удалил некоторые *.setOnClickListener(this); так как не влезло все в сообщение
0
|
||||||
|
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
|
| 17.08.2016, 11:37 | |
|
давай еще и разметку, я тебе по-человечески перепишу код
что бы там небыло 100500 строк
0
|
|
|
0 / 0 / 0
Регистрация: 16.08.2016
Сообщений: 9
|
|
| 17.08.2016, 12:04 [ТС] | |
|
0
|
|
|
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
|||||||||||
| 17.08.2016, 12:35 | |||||||||||
|
вобщем я разметку не трогал, оставил как есть..там отдельный разговор
по остальному: 1. в папке res/values создаем файл с названием arrays.xml и копируем туда это Кликните здесь для просмотра всего текста
2. код активити Кликните здесь для просмотра всего текста
я не стал там городить проверки, которые касаются самой логики игры, это тоже отдельный разговор
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 16.08.2016
Сообщений: 9
|
|
| 17.08.2016, 12:41 [ТС] | |
|
Спасибо.
0
|
|
|
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
|
||||||
| 17.08.2016, 12:52 | ||||||
|
пересмотрел код, там массивы и не нужны в методах
0
|
||||||
|
Модератор
3407 / 2178 / 354
Регистрация: 13.01.2012
Сообщений: 8,448
|
|
| 17.08.2016, 13:29 | |
|
NikBobkov, ваш код не работал потому что вы инициализировали массив ссылками на кнопки в которые еще ничего не было записано - то есть там был null
0
|
|
| 17.08.2016, 13:29 | |
|
Помогаю со студенческими работами здесь
15
Передача параметров из класса в кнопку формы Передача числа в слот по нажатии на кнопку
Не работает передача события нажатия на кнопку Передача данных в компьютер при нажатие на кнопку. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|