在vb.net中我有一些看起来像这样的代码:
Imports System
Imports System.IO
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Public Class Form1
Public Sub New1()
Directory.SetCurrentDirectory("C:\Users\alexluvsdanielle\Desktop\") '"
Console.WriteLine("Chapter 10 example 10: nested PdfPTables")
Dim doc As Document = New Document(PageSize.A4, 50, 50, 50, 50)
Try
Dim writer As PdfWriter = PdfWriter.GetInstance(doc, New FileStream("Chap1010.pdf", FileMode.Create))
doc.Open()
Dim table As PdfPTable = New PdfPTable(4)
Dim nested1 As PdfPTable = New PdfPTable(2)
nested1.AddCell("1.1")
nested1.AddCell("1.2")
Dim nested2 As PdfPTable = New PdfPTable(1)
nested2.AddCell("2.1")
nested2.AddCell("2.2")
Dim k As Integer = 0
While k < 24
If k = 1 Then
table.AddCell(nested1)
Else
If k = 20 Then
table.AddCell(nested2)
Else
table.AddCell("cell " + k)
End If
End If
System.Threading.Interlocked.Increment(k)
End While
table.TotalWidth = 300
table.WriteSelectedRows(0, -1, 100, 600, writer.DirectContent)
doc.Close()
Catch de As Exception
Console.Error.WriteLine(de.Message)
Console.Error.WriteLine(de.StackTrace)
End Try
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
New1()
End
End Sub
End Class
我想看看控制台在写什么。我该怎么做?
答案 0 :(得分:2)
另一种方法是使用System.Diagnostics.Trace
类来处理这些消息。然后它们将显示在Visual Studio输出窗口中,您可以选择附加其他“侦听器”,如ConsoleTraceListener(对于控制台,当它可用时)或TextWriterTraceListener(对于日志文件)。你甚至可以实现自己的(比如DatabaseLogTraceListener或MessageBoxTraceListener - 但要注意最后一个)。
答案 1 :(得分:1)
我通过命令行启动WinForms应用程序的输出:
myapp.exe > debugfile.txt
之前我已经完成了将输出重定向到我可以读取的文件。
答案 2 :(得分:1)
为什么不使用Debug.Print?它会在开发时显示在输出窗口中,并且比任何地方的一堆消息框更清洁......
答案 3 :(得分:0)
Winforms应用程序中没有控制台。
您需要使用MessageBox来显示您的消息。
MessageBox.Show(de.Message)
答案 4 :(得分:0)
我有自己的解决方案:
我创建了一个带有多行文本框的表单,用于填充窗口大小。我创建了一个函数来将一些文本附加到文本框中。我的功能如下:
Friend Sub ConsoleBox(ByVal message As String)
If frmConsole.Visible = False Then
frmConsole.Show()
End If
frmConsole.txtConsole.AppendText(message & vbNewLine)
End Sub
然后,我没有使用MsgBox(&#34;错误消息&#34;)而是以这种方式调用我的函数:
ConsoleBox("My error message")
到目前为止,这已经奏效了,它取代了所有烦人的消息框,每当出现问题时,你必须使用接受按钮。
希望这有帮助。