我正在编写一个程序,用于从CSV文件读取问题以供用户回答。一旦我从问题CSV文件中读取,我将我的问题存储在问题对象列表中。然后,我的GUI向用户显示每个问题从CSV文件读取后在多行显示标签文本
Public Sub displayQuestion(ByVal x As Integer)
QuizForm.questionLabel.Text = allQuestions(x).qText
End Sub
并且他们能够通过下一个/上一个按钮循环访问它们。每个Question对象都有一个表示问题文本的关联字符串变量。
有些问题很简单的句子,如
“以下哪项陈述的是一个测试团队的MOST有效的目标是什么?”
但是,有些问题是采用以下格式:
以下哪项是正确的?
答:软件测试可能需要满足法律或合同 的要求。
B.软件测试主要是为了提高 开发人员的工作质量。
C.严格测试和修复发现的缺陷有助于降低运行环境中出现问题的风险。
D.严格测试有时用于证明发现所有失败已发现 。
麻烦的是,当从CSV文件中读取问题文本时,它必须位于一行上。这就导致了结构类似的第二个例子显示在我的GUI这样的问题:
这是不是很人性化。
编号喜欢它呈现这样的:
我明白,我怎么会被硬编码vbnewLine到文本做到这一点,但这些问题都在运行时动态加载。
任何关于我如何去做这件事的建议?
问题的标签可以是多行。答案选项可能/应该是复选框,也可以是多行。控件也可以锚定或用于布局面板, – Plutonix
我相信你的问题是你不知道如何构造CSV(逗号分隔变量)文件并解析其内容以供显示。它是否正确?仔细想想,如果每一行如果文件有多个字段,那么您应该能够根据每行解析的信息做出决定,以决定如何显示它。此外,请考虑使用[TextFieldParser类](https://msdn.microsoft.com/en-us/library/microsoft.visualbasic.fileio.textfieldparser(v = vs.110).aspx)来读取文件并提取字段来自文件中的每一行。 – TnTinMn