DataGridView

タグの編集
投稿者 緋竜  (小学生) 投稿日時 2008/11/2 00:53:49
Dataベース勉強暦2日の緋竜といいます。
________________________________________
□武将名前 |兵科|武力|特技|特技説明|
____________________|
>織田信長 |鉄砲|82 |三段|三連発砲|
____________________|
 羽柴秀吉 |歩兵|77 |強運|天気  |
____________________|
 丹羽長秀 |歩兵|75 |退却|必ず逃走|
____________________|
 柴田勝家 |騎馬|94  |突撃|20%UP |
____________________|
 竹中半兵衛|槍 |95  |戦略|特技封鎖|
____________________|

こうゆうDataGridViewがあった場合、信長Dataの値を変数(仮busyou)とか、配列busyou(4)とかに
代入する方法が知りたい。
聞いた方が早いんで(マテ)
clickイベントでもいいけど。
dataベースをやり始めたら結構面白いのでお願いしmす(^^)
投稿者   (社会人) 投稿日時 2008/11/2 07:04:14
DataGridViewにどうやって表示させたんですか?
表示させる過程で、TableAdapterやDataReader使ってデータをDBから読み込むと思うのですが。
そのときにbusyouの配列に突っ込めばいいだけだと思いますよ。
投稿者 緋竜  (小学生) 投稿日時 2008/11/2 08:40:04
コードレスで、ねじ込みました。(^^)
もう一つ質問ですが
フォーム1でPublic Pass As Integerで宣言
フォーム2でPassの変数が使えないのだ。緋竜のBasicは故障?
以前KeyDownイベントハンドラのとこも故障してたんで。
また、アンインストールしなきゃならないのかなぁ~
投稿者 緋竜  (小学生) 投稿日時 2008/11/2 10:59:50
Publicって、そのままグローバルかと思ったが・・
なんか士気が下がった。
zzz//やる気0に・・
投稿者   (社会人) 投稿日時 2008/11/2 11:44:52
コードレスってテーブルをフォームにぽとっと落としたってことですか?
それなら、裏でコードが吐かれてると思います。

そこで、多分TableAdapterを使ってDataSetにデータを読み込む処理がされてるはずです。
そこでデータを取り出すとかしてみるのが一番手っ取り早いです。


後、Publicはグローバルではありません。外部に公開するかどうかです。
あまり褒められたプログラミングの仕方ではありませんがSharedをつけるとグローバルっぽくアクセスできます。
そして、コンパイルエラーは故障ではありません。
正しい言葉を使わないと、掲示板で相手に意味が伝わらないので気をつけて下さい。
ただ、勉強仕立てのころは、何が正しい言葉なのかどうかということがわからないと思いますが…。

コンパイルしてエラーが出るのはコンパイルエラーで、故障やVBのバグとかではなく、プログラムを書いた人のミスです。
投稿者 まり  (中学生) 投稿日時 2008/11/2 12:16:07
>緋竜
君は本当に馬鹿だねぇ。馬鹿の王様だね♪
馬鹿はすぐにぐろーばる変数に頼りたがるよね。
それにすぐ自分の失敗を他のもののせいにしたがる。
でも仕方ないよね、馬鹿なんだもん(^ー^)v
コードレス
ププッ
コードレスだって。笑っちゃうよね(^o^)

お馬鹿な緋竜くんに教えてあげるけど(感謝してよね♪)
DataGridViewにはRowsとColumnsってプロパティがあってね(プロパティってわかる?)
これを使えば好きなCellの値を参照したり設定したり出来るんだよ。
わかった?
投稿者 緋竜  (小学生) 投稿日時 2008/11/2 12:37:52
知ったかぶりだろ。よく出現するよな。
では。
投稿者 緋竜  (小学生) 投稿日時 2008/11/2 12:43:47
眠れないんでオンラインgameをしてるが。。
信用度の基準
まぁ、桜氏は82点
るしぇ氏は80点
あ氏71点
やま氏77点
うたひこ君63点
N氏70点
ナリスマシの馬君25点こんな感じ。
投稿者 緋竜  (小学生) 投稿日時 2008/11/2 15:28:32
[Code]
Option Strict On
Public Class Form1
    'VisualBasic2008
    Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
        If MessageBox.Show("更新を終わりますか", "Close", MessageBoxButtons.YesNo _
        , MessageBoxIcon.Question) = Windows.Forms.DialogResult.No Then
            e.Cancel = True
        Else
            '登録更新
            Me.武将BindingSource.EndEdit()
            Me.武将TableAdapter.Update(Database1DataSet)
        End If
    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'TODO: このコード行はデータを 'Database1DataSet.武将' テーブルに読み込みます。必要に応じて移動、または削除をしてください。
        Me.武将TableAdapter.Fill(Me.Database1DataSet.武将)
        '1行
        With 武将DataGridView
            .SelectionMode = DataGridViewSelectionMode.FullRowSelect
            .MultiSelect = False
        End With
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

    End Sub
End Class
[/CODE]
よし、少しでけた!!
左の矢印を指すDataを変数に代入したいのだ。
まぁ、これでもDataの出し入れはできますよ。
投稿者 まり  (中学生) 投稿日時 2008/11/2 15:38:52
>知ったかぶりだろ。よく出現するよな。
>では。 
アハハハ君の馬鹿っぷりは本当に楽しいねぇ(^ー^)
ここまで馬鹿だと、いっそ清清しいねb
君は馬鹿なんだから、人の話は素直に聞かないと駄目じゃない♪
あ、でも聞いても理解出来ないんじゃ仕方ないか。
ごめんね、ちょっと難しすぎたかな?
これからはもう少し分かりやすく
サルに芸を仕込む位の気持ちで教えてあげるから。
どこが分からなかったの?言ってごらん。


それとね、お馬鹿な小学生にこんな難しいことを言っても伝わらないかもしれないけど
「信用度の基準」なんて言っちゃ駄目だよ。
君がどんなつもりで書いたのかは分からないけど、それを見て傷つく人もいるんじゃないかな?
意味もなく他人を傷付けるなんて、とても恥ずかしいことだよ。
君が馬鹿なのは今更どうしようもないことだけど
無闇に他人を傷つけるような人には、なっちゃ駄目だよ。
そんな事になったら、お母さんが悲しむよ。
もうこんなことしちゃ、駄目だからね。
わかった?


投稿者 まり  (中学生) 投稿日時 2008/11/2 16:05:40
VB始めて4ヶ月ってい言ってたよね?
それってウソだよね?
実はまだ1ヶ月くらいなんでしょ?
だって、そうじゃないとこんな・・・
まさか、ね?

>よし、少しでけた!!
最初に言ってた
>信長Dataの値を変数(仮busyou)とか、配列busyou(4)とかに代入する
って処理がどこにも見当たらないけど、何ができたのかな??

あ!
もしかして「できた」って言葉の意味を理解していないのかな??
ごめんね、無神経なこと聞いちゃったね。
そこまで馬鹿だとは思わなかったんだ、本当にごめんね。

>左の矢印を指すDataを変数に代入したいのだ。
>まぁ、これでもDataの出し入れはできますよ。 
・・・やっぱりまずは日本語の勉強から始めた方がいいのかもしれないね。
もしかして私の書き込みもほとんど読めないのかな?
これは読める?
「ばか」

投稿者   (社会人) 投稿日時 2008/11/2 18:58:00
>まりさん
食いつきたくなる気持ちもわからんではないですが、ここの管理人の方に迷惑になるかもしれないので自重して頂けないでしょうか。

>緋竜さん
多分、データベースに編集後のデータを更新するためにbusyouデータを変数に入れたいと思ったのかな。
そして、変数に入れてから、SQLのUpdate文組み立てたりしたかったのだろうと考えていたのかな?

でも、本来の緋竜さんの目的は、データベースにDataGridViewで編集した結果を反映したかったのではないでしょうか?
もし、そうなら少し出来てますね。

肝心の質問部分ですが、何が聞きたいのかよくわかりません。
DataGridViewで現在選択している行の武将のデータをプログラムから取得したいということでしょうか?
投稿者 緋竜  (小学生) 投稿日時 2008/11/3 03:46:37
さすがは、桜先生!(^^)
dataの出し入れは完成してます。
ちょっと、やりたい事は
button1を押すと、矢印部分のData内容を、変数A、B、C、Dに入れたいんです。
string型の名前(羽柴秀吉),string型の兵科(歩兵)、integer型の戦闘値(77)、string型の特技(強運)
投稿者 緋竜  (小学生) 投稿日時 2008/11/3 03:50:24
コードレスは、コード無しでdataベースを作成してます。
投稿者   (社会人) 投稿日時 2008/11/3 09:53:04
それでしたら、2008/11/02 3:16:07のまりさんの発言が答えです。
投稿者 緋竜  (小学生) 投稿日時 2008/11/3 10:01:41
まりさんのやり方は、古いようです。
自力で解決しました。
別の方法でね。(VisualBasic2008無料版)
発言10(終わり)
投稿者 緋竜  (小学生) 投稿日時 2008/11/3 10:55:58
Dataベース4日目で気がついたが、普通ユーザーに格下げされてる。
ファイルの閲覧権限が無い。
ファイルのプロパティは変更できたんで使えるようになったが。
プロパティが変更できるんだから、マスターはマスターなんだろうけど!!(^怒^)
早く逮捕されてほしいよ。この不正アクセス君は。
投稿者 緋竜  (小学生) 投稿日時 2008/11/3 11:52:56
ネコ輔がいたよwww
C#は知らんが・・www
InitializeComponent();
ここに書けよ。
フォーム作成前に処理しとけ。
Loadは、後だ。
Zzzz・・
投稿者   (社会人) 投稿日時 2008/11/3 21:04:50
一概に古いとは言うのはどうかと。
DataGridViewからデータを取り出すという条件下においては、それしか方法がありませんから。

緋竜さんが、もうちょっと前提条件を示さないと駄目です。
VB2008で、型付データセットを使ってDataGridViewにデータを表示してます。
DataGridViewで編集した結果を、データベースのほうに反映させたいです。
とかみたいにね。

上の文章でも、まだ足りないくらいです。
皆は、緋竜さんのパソコンの中身や画面を見れるわけじゃないので
質問時は丁寧に状況説明お願いします。
投稿者 緋竜  (小学生) 投稿日時 2008/11/4 03:09:23
閲覧項目は変数に代入できてます。
ただ、また欲張りがでてきました。
例えば、(1)1000人分のリストだとツール機能だけでは検索に時間がかかる点
(2)全Dataを変数に代入したい。例Busyou(1000)
(3) 政治項目を押すと政治の高い順に並び変えたい。
まぁ、きりがないんで。
とりあえず、キリのよいとこで終了です。
次は、CSVファイルをやる事にしました。
では。
投稿者   (社会人) 投稿日時 2008/11/4 05:11:17
(1)1000件程度で時間かかります??
(2)全DataはDataSetの中に入ってます。あえて再度変数に代入する意味はあまりないと思います。
(3)データソースをフォームにぽとっと落として出来る奴には、既にカラムヘッダクリックでのソート機能はありますよ?
投稿者 緋竜  (小学生) 投稿日時 2008/11/4 06:03:39
ぽとっ。っと落とすのはクセになりそうですね(^^)
コードの理解がオロソカになります。
データベースだけで1冊の本ができる程に奥が深い(笑)
キリがないんで、一旦終了して、dataをファイル化するトコをやります。
簡単ですか?ファイル関係わ?
今からやるんですが・・
変数Aの値をテキストに出し入れしたい(入門者)
暇なら、ちょっと書いてください(笑)
まぁ、チョコチョコやり始めますが。
投稿者   (社会人) 投稿日時 2008/11/4 09:46:30
いろいろ突っ込み所ありすぎるんだけど・・・ね。

Databaseの質問をするときは、データベース名、ミドルウエア名を書こうね。
Databaseもミドルウエアもいろいろあるから。

まあ、君のはSQLServer2008 Express Editionで、ADO.NETだとは予想できるけど。
そういうのをちゃんと書けるようになった方が君の為だと思うけどね。

(1)1000件程度はそんなに時間かかんない。テーブル設計が悪いんじゃない?
(2)そういうことをしないためにDatabaseがあるんだけど。
(3)クエリ覚えたら?