送信したメールにlistboxの項目を添付、textboxからlistboxに
投稿者 YuO  (社会人)
投稿日時
2013/4/5 23:11:14
わからないのは何でしょうか。
> メールの本文にlistboxの項目を添付したいんですが
> どしたらいいかわかりません。
ListBox1のItemsからPriceを取得する方法はご自身でButton1_Clickに書いていますよね。
あとは,文字列を作り出して,bodyに追加するなりすればよいです。
> 後、textboxに書いた文字と数字をlistboxに
> 表示したいのですがどうしたらいいでしょう。
これは,TextBoxの内容をListBoxに追加したい,ということでしょうか。
それであれば,Form1_Loadでやっているような方法で追加できます。
# Addの戻り値をSelectedIndexに指定することで,選択状態にできます。
> メールの本文にlistboxの項目を添付したいんですが
> どしたらいいかわかりません。
ListBox1のItemsからPriceを取得する方法はご自身でButton1_Clickに書いていますよね。
あとは,文字列を作り出して,bodyに追加するなりすればよいです。
> 後、textboxに書いた文字と数字をlistboxに
> 表示したいのですがどうしたらいいでしょう。
これは,TextBoxの内容をListBoxに追加したい,ということでしょうか。
それであれば,Form1_Loadでやっているような方法で追加できます。
# Addの戻り値をSelectedIndexに指定することで,選択状態にできます。
投稿者 りらっくま  (高校生)
投稿日時
2013/4/6 02:03:08
回答ありがとうございました。
vb初心者なので
がんばって調べながら完成させたいです。
vb初心者なので
がんばって調べながら完成させたいです。
メールの本文にlistboxの項目を添付したいんですが
どしたらいいかわかりません。
後、textboxに書いた文字と数字をlistboxに
表示したいのですがどうしたらいいでしょう。
図々しく2つも質問さしてもらいましたけど
どなたかご教授お願いします。
一応今書いているコードがこれです。
Public Class Form1
Private Class Price
Public Property 品物 As String
Public Property 単価 As Integer
Public Function Copy() As Price
Return New Price With {.品物 = Me.品物, .単価 = Me.単価}
End Function
Public Overrides Function ToString() As String
Return String.Format("{0}{1:0}円", 品物, 単価)
End Function
End Class
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
ListBox1.Items.Add(New Price() With {.品物 = "パ ン", .単価 = 100})
ListBox1.Items.Add(New Price() With {.品物 = "コーヒー", .単価 = 200})
ListBox1.Items.Add(New Price() With {.品物 = "ジュース", .単価 = 300})
End Sub
Private Sub ListBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.Click
If ListBox1.SelectedItem IsNot Nothing Then
ListBox2.Items.Add(DirectCast(ListBox1.SelectedItem, Price).Copy)
End If
End Sub
Private Sub Label2_Layout(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Label2.Text = ("リストから項目をクリックしてください")
End Sub
Private Sub Label1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Label1.Text = ("リストから選択された項目")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim 合計 As Integer = 0
For Each itm As Price In ListBox2.Items
合計 += itm.単価
Next
TextBox1.Text = "合計" & 合計.ToString & "円"
End Sub
Private Declare Function SendMail Lib "bsmtp" _
(ByVal szServer As String, ByVal szTo As String, ByVal szFrom As String, _
ByVal szSubject As String, ByVal szBody As String, ByVal szFile As String) As String
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim msg As New System.Net.Mail.MailMessage()
Dim senderMail As String = "@yahoo.co.jp"
Dim recipientMail As String = "@softbank.ne.jp"
Dim subject As String = ListBox2.Text
Dim body As String = ListBox2.Text + vbCrLf + vbCrLf + TextBox1.Text
Dim sc As New System.Net.Mail.SmtpClient()
sc.Host = " "
sc.Port =
sc.EnableSsl = False
sc.UseDefaultCredentials = False
sc.Timeout = 100000
sc.Credentials = New System.Net.NetworkCredential("****", "****")
sc.Send(senderMail, recipientMail, subject, body)
MessageBox.Show("送信しました")
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
With ListBox2
Do While .SelectedIndex > -1
.Items.RemoveAt(.SelectedIndex)
Loop
End With
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim x As String
Dim a As Integer = 0
If TextBox3.Text = a Then
If TextBox2.Text = x Then
ListBox1.Items.Add(New Price() With {.品物 = x, .単価 = a})
End If
End If
End Sub
End Class