Перейти к содержимому

Фотография

Случайный выбор элементов с Drop Down List


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 8

#1 Olga_

Olga_

    Новый участник

  • Members
  • Pip
  • 25 сообщений
  • ФИО:Olya

Отправлено 04 сентября 2006 - 12:55

Добрый день!
Таким я образом я точно задаю какой должен быть элемент выбран:

w3["Item"]("IdConrol")["selectedIndex"] = 1

Подскажите пожалуйста как выбрать случайным образом элемент с Drop Down List.

Спасибо,
Оля
  • 0

#2 APC

APC

    Опытный участник

  • Members
  • PipPipPipPip
  • 293 сообщений
  • ФИО:Похилько Андрей Федорович
  • Город:Москва


Отправлено 04 сентября 2006 - 15:48

Генерируешь случайное число от 0 до n-1 (n равно количеству элементов в списке). И вместо единички в свою строчку подставляешь
  • 0

#3 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 19 сентября 2006 - 14:45

Здравствуйте, Ольга.

Вот так:
 // C#Script
  var cbIndex = Math["floor"](Math["random"]() * w3["Item"]("IdConrol")["wItemCount"]);
  w3["Item"]("IdConrol")["selectedIndex"] = cbIndex;

  • 0
С уважением,
Дмитрий

#4 Stally

Stally

    Новый участник

  • Members
  • Pip
  • 26 сообщений

Отправлено 19 февраля 2007 - 12:20

:diablo:
эээ.. а как подобный код будет на vbscript выглядеть?
  • 0

#5 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 19 февраля 2007 - 12:58

Здравствуйте.

' VBScript
Sub Test
  Randomize
  lowerbound = 0
  upperbound = 10
  cbIndex = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
  Log.Message cbIndex
End Sub

  • 0
С уважением,
Дмитрий

#6 Stally

Stally

    Новый участник

  • Members
  • Pip
  • 26 сообщений

Отправлено 20 февраля 2007 - 15:59

А как узнать количество элементов выпадающего списка? Есть возможность определить это число средствами TC?
  • 0

#7 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 21 февраля 2007 - 06:57

Здравствуйте.

Вот так:
' VBScript
  Log.Message combo.wItemCount

  • 0
С уважением,
Дмитрий

#8 Stally

Stally

    Новый участник

  • Members
  • Pip
  • 26 сообщений

Отправлено 21 февраля 2007 - 09:17

Кхм..
Не то спросил.. :)
Надо узнать количество элементов в списке для того, чтобы их использовать. Список динамический. В нём вообще элементов может не быть.. И это тоже надо узнать.

Очень нужен код на VB чтобы сделать следующее:
Определить количество элементов списка и выбрать один из них (по индексу какому-нибудь).

Тестируется программа, написанная на Делфи, используется ТС5
  • 0

#9 Dmitry N

Dmitry N

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 742 сообщений
  • ФИО:Николаев Дмитрий
  • Город:Где-то в России

Отправлено 22 февраля 2007 - 09:01

Здравствуйте.

Я наверное не так понял. :)

Количество элементов в combo box'е (или drop down списке) можно узнать через свойство wItemCount, как я вам и предлагал.

Если проблема в том, что combo box не содержит элементов до тех пор пока не открыть выпадающий список, то нужно его открыть и посмотреть свойство wItemCount для этого комбо бокса или для самого списка. Как конкретно это можно сделать зависит от контрола, с которым вы работаете, и от того, откомпилированно ли ваше приложение как Open.
  • 0
С уважением,
Дмитрий


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных