2009-09-30 2 views
0

У меня есть оценщик уравнений, который мне нужно сделать в Visual Basic.Комбобокс с операторами сравнения

Например, для следующего уравнения ответ будет правдой.

(12 = 12) AND (12 > 1) 
    true and true 

Для обоих операторов сравнения я создал поле со списком, чтобы вставить <,>, =, < =,> =, <>.

Моя проблема заключается в том, что я не знаю, как получить доступ к полем со списком, чтобы получить правильный оператор для оценки уравнения. Может кто-нибудь мне помочь?

+2

Извините, не могу сказать, в чем ваш вопрос. Я понимаю, что вы пытаетесь построить формулу, но точно, какую часть вам нужна помощь, неясно. Возможно, вы могли бы показать нам, что у вас есть, а затем указать, где в этом коде вам нужна помощь? – RBarryYoung

+0

Вопрос непонятен, это точно. Единственная причина, по которой я это понял, - это то, что пару лет назад мне пришлось реализовать что-то очень похожее. – AngryHacker

+0

Я тоже их делал, но в этом вопросе отсутствует множество существительных и глаголов. Мне определенно нужны психические силы, чтобы выяснить, о чем просят. – RBarryYoung

ответ

0

Ответ заключается в том, что вы должны создать инструкцию SELECT CASE, где вы оцениваете каждую возможную комбинацию combobox и строите свою формулу на основе этого.

+0

Ничего себе, надеюсь, что ты прав насчет того, о чем просят. :-) – RBarryYoung

0

Вы можете попробовать Evaluate your VB expression at runtime, предлагаемая ссылка покажет вам, как это сделать. Для получения большего .. .NET-решения, check this article: он показывает вам, как использовать метод Compute в DataTable для оценки простых выражений. Он также перечисляет MSDN link для всех доступных операций.

НТН, мт

0

Я думаю, что вы могли бы сделать это с помощью типов строк ...

если String.Format ("{0} {1} {2}", cbox1.text, cbox2 .text, cbox3.text) = True Then

конец, если ...

Я не имею компилятор на моем домашнем компьютере, но я думаю, что будет работать для вас. Я делаю что-то подобное с переключателями, но его полное сравнение строк ...