ふらっとC#,C♯,C#(初心者用) Part67
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001デフォルトの名無しさん
2010/12/16(木) 18:23:33「どんなにくだらないC#プログラミングに関する発言でも誰かが優しくレスをしてくれるスレッド」です。
ほかのスレッドでは恐ろしくて書き込めないような低レベル、もしくは質問者自身なんだか意味がよく分からない質問、
ググろうにもキーワードが分からない場合など、勇気をもって書き込んでください。
内容に応じて、他スレ・他板へ行くことを勧められる、あるいは誘導される場合がありますがご了承下さい。
なお、テンプレ2行目が読めない回答者は邪魔なので後述のC#相談室に移動して下さい。
>>980を踏んだ人は新スレを建てて下さい。
>>980が無理な場合、話し合って新スレを建てる人を決めて下さい。
■前スレ
ふらっとC#,C♯,C#(初心者用) Part66
http://hibari.2ch.net/test/read.cgi/tech/1290854247/
■関連スレ
C#, C♯, C#相談室 Part63
http://hibari.2ch.net/test/read.cgi/tech/1289733048/
VB.NET質問スレ(Part35)
http://hibari.2ch.net/test/read.cgi/tech/1284423653/
くだすれC++/CLI(初心者用)part2
http://pc12.2ch.net/test/read.cgi/tech/1268613679/
■備考
コードの量が多い場合は下記サイトを使うなどしたほうがいいかも
http://ideone.com/
コードを貼り付けてRun codeのチェックをはずしてsubmitボタンを押すと
コードを鯖側にアップして専用のアドレスが発行されます。
直接貼る場合は下記サイトなどを利用してhtmlエンコードした方が
インデントも残って見やすいです
http://kawama.jp/php/encode_html.php
0893デフォルトの名無しさん
2011/01/11(火) 15:56:440894デフォルトの名無しさん
2011/01/11(火) 15:58:51専ブラでも作ったらどうだ?
C#をそこそこ使うから勉強になるぞ
0895デフォルトの名無しさん
2011/01/11(火) 16:14:23ありがとう。やっとわかったようなきがする。
0896デフォルトの名無しさん
2011/01/11(火) 16:31:51最終的に何作りたいかによるけど・・・
業務的に使いたいならデータ保存にDBとかXML使った名簿管理とかどう?
データの取り出し、追加更新削除や入力チェックとか
最低限業務で使用する機能が入ってる。
0897デフォルトの名無しさん
2011/01/11(火) 17:18:18のスレ立てれんかった
テンプレのリンクとか全部書きなおしたのに・・・
立てれる人いるならテンプレどっかにアップするよ。
0898デフォルトの名無しさん
2011/01/11(火) 17:24:37じゃあ立てたんでテンプレよろしく
http://hibari.2ch.net/test/read.cgi/tech/1294734221/
0899デフォルトの名無しさん
2011/01/11(火) 17:30:08ありがとう任務完了しました(`・ω・´)ゞ
0900デフォルトの名無しさん
2011/01/11(火) 17:58:510901デフォルトの名無しさん
2011/01/11(火) 19:20:00Form1のpublicな変数の値を、モーダルで開いたForm2のコンボボックスのTextプロパティに渡したいのですが、
コンボボックスのDropDownStyleをDropDownListにしてると出来ません。
コンボボックスの上部をユーザーがエディットできない状態にしつつ、
Form1の変数を渡すことは出来ませんか?
よくある、コンボボックスを開いてデバイスを選択して、環境変数を変更するダイアログが作りたいのですが。
0902デフォルトの名無しさん
2011/01/11(火) 19:24:510903デフォルトの名無しさん
2011/01/11(火) 19:34:59コンボボックスのプロパティの問題なのか、
フォームの開き方なのか、インスタンスの作り方なのか・・・
何処が原因なのか、まだよく分からないので、ヒント教えてください。
0904デフォルトの名無しさん
2011/01/11(火) 19:36:300905デフォルトの名無しさん
2011/01/11(火) 19:38:070906デフォルトの名無しさん
2011/01/11(火) 19:38:15items.index
この二つを使うだけじゃね?
0907デフォルトの名無しさん
2011/01/11(火) 19:59:13public string x = "name";
private void 環境設定ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.ShowDialog(this);
if (f2.DialogResult == DialogResult.OK)
処理;
f2.Dispose();
}
Form2が
private void Form2_Load(object sender, EventArgs e)
{
comboBox1.Text = ((Form1)this.Owner).x;
}
comboBox1のitemsを作るところはもう出来てるんです。
ただ、環境設定ですからまず現状を表示しないといけないので、
Form1の現状をForm2コンボボックスの上部に表示させたいのですが、(以下>>901)
0908デフォルトの名無しさん
2011/01/11(火) 20:18:46それForm2とか関係ないじゃん
DropDownListスタイルだったらTextになにを設定しても表示されない
0909デフォルトの名無しさん
2011/01/11(火) 20:22:55Listからせ託したものは表示されるけど、外部からプロパティでは触れないと?
うーん、じゃあ単に表示じゃなくて、Listの中から検索して表示にしないと駄目なのかな。
0910デフォルトの名無しさん
2011/01/11(火) 20:24:440911デフォルトの名無しさん
2011/01/11(火) 21:06:30そのコードをコピペしてやってみたら俺のは表示された
俺も初心者だから何が原因か分からないけど俺のソース貼ってみる。
↓↓↓form1
public string x = "ヤッホー";
private void button1_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2();
f2.ShowDialog(this);
if (f2.DialogResult == DialogResult.OK)
{
}
f2.Dispose();
}
↓↓↓form2
private void Form2_Load(object sender, EventArgs e)
{
comboBox1.Text = ((Form1)this.Owner).x;
}
Form2のドロップダウンする前のコンボボックス「ヤッホー」と表示される
0912デフォルトの名無しさん
2011/01/11(火) 21:25:54>コンボボックスのDropDownStyleをDropDownListにしてると出来ません。
って書いてあるじゃん
0913デフォルトの名無しさん
2011/01/11(火) 21:41:16DropDownListにしてなかった すいません
0914デフォルトの名無しさん
2011/01/11(火) 22:32:00うむ。許してやる。
0915デフォルトの名無しさん
2011/01/11(火) 22:37:380916デフォルトの名無しさん
2011/01/11(火) 22:46:470917デフォルトの名無しさん
2011/01/12(水) 00:07:350918デフォルトの名無しさん
2011/01/12(水) 09:28:59最低限読んどけよなカス
0919デフォルトの名無しさん
2011/01/12(水) 09:40:420920デフォルトの名無しさん
2011/01/12(水) 10:18:54(サードパーティツールは使用不可能)て作成できませんか?
要は、プログラム内のボタンをクリックしたタイミングで接続している携帯で電話をかけられればいいのですが
今のところドコモのFOMA限定で考えています(ガラケーのほう)
WindowsPhoneならいけそうですが、そうもいかないっぽいので
PCとFOMAの接続は純正のUSB→FOMAの充電部接続するケーブルを考えています。
絶対に無理とか何らかの情報で構わないのでお願いします。
0921デフォルトの名無しさん
2011/01/12(水) 10:33:27たぶん無理だと思います。
0922デフォルトの名無しさん
2011/01/12(水) 10:36:17物理的にボタンを押す装置を作ればok
0923デフォルトの名無しさん
2011/01/12(水) 10:50:360924デフォルトの名無しさん
2011/01/12(水) 10:51:35>携帯電話をモデムとして
これが出来ればATコマンドでいけるんですが・・・
>>922
それは難しいです
0925デフォルトの名無しさん
2011/01/12(水) 11:10:220926デフォルトの名無しさん
2011/01/12(水) 12:06:25ありがとうございます!!
こんな資料があるとは・・・・
USBハンズフリーあたりの情報からいけそうな気がしてきました。
レスくださった皆様ありがとうございました!
0927デフォルトの名無しさん
2011/01/12(水) 12:09:49ボタン部分をひっぺがしてショートさせるやつだけど
>>925のような資料を元に一昔前はPCで携帯電話の
メモリー管理をするケーブルとかソフト売ってた記憶があるけど
ああいうのってもうないのかね?
あれだと確かドライバー入れればソフトは自分でも作れたような記憶が・・・
というかケーブルとドライバーさえなんとかなればFOMAだろうが単なるモデムにみえるよね?
0928デフォルトの名無しさん
2011/01/12(水) 12:53:01ショートさせるのは強引すぎますねぇ(^^;
とりあえずモデムに見えるのを期待してドライバとか入れてみます。
0929デフォルトの名無しさん
2011/01/12(水) 12:59:10http://www.reudo.co.jp/crystal/index.html
0930920
2011/01/12(水) 13:04:51これでリファレンスにのっとってATコマンドで制御できそうな感じです。
ttp://www.uproda.net/down/uproda192356.png.html
0931デフォルトの名無しさん
2011/01/12(水) 13:06:30ググってもPC自体がが接続しているかどうかのチェック方法しかでてこなくて・・・
0932デフォルトの名無しさん
2011/01/12(水) 13:18:580933デフォルトの名無しさん
2011/01/12(水) 13:26:19って場合は接続していないで良いの?
0934デフォルトの名無しさん
2011/01/12(水) 18:52:140935デフォルトの名無しさん
2011/01/12(水) 21:15:05アプリケーションを実行中にもう一つウィンドウを出したいのですが、
namespace FromTestAppli
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form1 f = new Form1();
f.Show();
System.Threading.Thread.Sleep(5000);
f.Close();
}
}
}
というコードでウィンドウを作ったところ、作ったウィンドウが真っ白で応答なしになってしまいます。
f.Show()ではなくてf.ShowDialog()を使えば真っ白にならないのですが、1枚目のウィンドウも同時に使いたいです。
どういうコードを書けば期待した動作をしてくれますか。
0936デフォルトの名無しさん
2011/01/12(水) 21:16:44待つならSystem.Windows.Forms.Timerでも使えばいい
0937デフォルトの名無しさん
2011/01/12(水) 21:17:15自分の複製をもう一枚表示するの?
0938デフォルトの名無しさん
2011/01/12(水) 21:26:31的確なアドバイスありがとうございました。
>>937
実際に作りたいものは少し違うのですが、大筋ではこのようなことがやりたかったのです。。
0939デフォルトの名無しさん
2011/01/12(水) 21:30:120940デフォルトの名無しさん
2011/01/12(水) 22:03:33現在、ASP.NETで開発をおこなっておりそこにlog4netを導入しました。
設置環境としてはWindowsserver20008R2で
社内環境や客先で基本的には上手く動いているのですが
級ににログが出力されなくなったりすることがあります。
何かIISの設定やWebConfig等に気をつけることとかありますでしょうか?
続いて2点目なのですが、WebからClickOnceを起動するときに
401エラーが発生してしまいます。IISの設定はWindows統合認証に
設定しており、これは自社では動き、客先でエラーになっている
状態です。
分かりにくいかと思いますが、どうぞよろしくお願い致します。
0941デフォルトの名無しさん
2011/01/12(水) 22:53:17ログが出力されなくなる直前のログを確認しろよ
後半
ログ見ろよ
0942931
2011/01/12(水) 23:21:29netstatで確認出来ることは知っていたのですが、それをどうやって持ってくるのかが分かりませんでした
調べたところAPIのGetExtendedTcpTableなどで出来るみたいですね
ありがとうございました
0943デフォルトの名無しさん
2011/01/13(木) 09:07:09んナめんどくさいことしなくても
こんなんじゃだめ?
using System.Text;
using System.Diagnostics;
using System.IO;
Process p = new Process();
StreamReader sr;
ProcessStartInfo startInfo = new ProcessStartInfo("netstat");
startInfo.Arguments = "-a";
startInfo.UseShellExecute = false;
startInfo.RedirectStandardOutput = true;
startInfo.CreateNoWindow = true;
p.StartInfo = startInfo;
p.Start();
sr = p.StandardOutput;
あとはsrをお好きに
usingかいてねぇやw
0944デフォルトの名無しさん
2011/01/13(木) 10:20:320945デフォルトの名無しさん
2011/01/13(木) 10:44:57ただし、StreamがCanSeekを支援している必要がある
0946デフォルトの名無しさん
2011/01/13(木) 10:56:42入れ子構造になった構造体をtreeviewに展開するのにすごく時間がかかります、
全部のノードで2万程なんですが、どうしたら素早く表示できるでしょうか
現状Core2 Duo 1.4GHzで30秒くらいかかります
0947デフォルトの名無しさん
2011/01/13(木) 10:58:590948デフォルトの名無しさん
2011/01/13(木) 11:51:320949デフォルトの名無しさん
2011/01/13(木) 11:55:450950デフォルトの名無しさん
2011/01/13(木) 12:04:45子ノードのクリックはしったら別スレッドで取得する
Windowsのエクスプローラのツリーがそんな感じでしょ?
0951デフォルトの名無しさん
2011/01/13(木) 12:14:44じゃあ>>948のようなトップノードを最初に追加して必要に応じて部分的にノードを追加するしかないな
この辺が参考になるかと
http://www.atmarkit.co.jp/fdotnet/dotnettips/260createtreeview/createtreeview.html
0952デフォルトの名無しさん
2011/01/13(木) 12:16:51>>951でやれば結構楽と思うよ
メモリの容量によると思うけど
0953デフォルトの名無しさん
2011/01/13(木) 12:48:000954デフォルトの名無しさん
2011/01/13(木) 13:56:16回転中心の座標を移動させることは出来るのでしょうか?
0955デフォルトの名無しさん
2011/01/13(木) 13:59:470956デフォルトの名無しさん
2011/01/13(木) 14:00:370957デフォルトの名無しさん
2011/01/13(木) 14:00:54なにを言っているか判りませんが
何とかすれば可能でしょうね
0958954
2011/01/13(木) 14:08:49回転する物体を平行移動しているのですが、
どうも平行移動する際に、回転の角度がおかしくなってしまうので、
回転中心が移動されてなく、固定されているんじゃないかなと思ったのです。
ですので、物体の平行移動と同じように回転中心を移動できれば改善されるかなと思ったのです。
0959デフォルトの名無しさん
2011/01/13(木) 14:11:000960デフォルトの名無しさん
2011/01/13(木) 14:11:17Managed DirectXの話?
0961デフォルトの名無しさん
2011/01/13(木) 14:14:310962954
2011/01/13(木) 14:15:54クォータニオンで回転させているのですが、物体を移動させないときはきちんと回転させれるのですが、
移動すると平行移動しかしてないにも関わらず、変な方向にぶっ飛んでいきます
>>960
>だからまず回転する物体とはなんなのか説明してよ
すみません、何を聞かれているのかがわかりません。
WPF,C#,Direct3Dでしょうか
0963デフォルトの名無しさん
2011/01/13(木) 14:16:05一旦ポリゴンを分割して回せばいいだけなんだけどな
0964デフォルトの名無しさん
2011/01/13(木) 14:17:29与え方が悪いだけのような
その場所付近のコードは晒せる?
0966デフォルトの名無しさん
2011/01/13(木) 14:18:33逆にしてみ
0967954
2011/01/13(木) 14:22:43理解しました。物体は振り子のようなものです。
>>964
degree = parameter[2]
Quaternion xz = new Quaternion(new Vector3D(0, 0, 1), degree);
Aa.OffsetX = parameter.z[0];
Aa.Rotate(xz);
0968デフォルトの名無しさん
2011/01/13(木) 14:25:24拡大縮小回転の中心が原点にくるように平行移動 -> 拡大縮小 -> 回転 -> 目的の位置へ平行移動
の順で変換する
0971デフォルトの名無しさん
2011/01/13(木) 14:40:46WPFはクォータニオンなんか直接触らなくても回転できる。わかんないなら難しいことしなくていい。
var rotation = new RotateTransform3D(new AxisAngleRotation3D(0,0,1), degree);
var translation = new TranslateTransform3D(平行移動のベクトル);
var transform = new Transform3DGroup();
transform.Children.Add(rotation);
transform.Children.Add(translation);
このtransformを適用するだけ
0972デフォルトの名無しさん
2011/01/13(木) 14:52:58やってみます。
0973デフォルトの名無しさん
2011/01/13(木) 15:01:36とおもったけどTransform3DGroup.Childrenが全部やってくれるのなら
それでいいのかも
0975デフォルトの名無しさん
2011/01/13(木) 15:20:380976デフォルトの名無しさん
2011/01/13(木) 15:20:42テーブル定義で、
command.CommandText = "create table Id_Name (id char NOT NULL primary key, name char)";
と、Id_Nameというテーブルを定義しました。
これでidは重複する文字は登録できなくなったのですが、
書き込むときに、
idが重複した場合エラーを
Messagebox.Showで表示したいんですが
判定条件?はどうしたらいいですか?
それから、NOT NULLにしてるので
文字が書き込まれなかった場合も
上記同様にしたいのですが
どうしたらいいですか?
参考ページなどでもいいのでお願いします!
0977デフォルトの名無しさん
2011/01/13(木) 15:22:410978デフォルトの名無しさん
2011/01/13(木) 15:23:040979デフォルトの名無しさん
2011/01/13(木) 15:23:59(;´д`)
0980デフォルトの名無しさん
2011/01/13(木) 15:24:16try
{
//処理
}
catch
{
//エラー処理
}
こんな感じかな
0981デフォルトの名無しさん
2011/01/13(木) 15:25:100982デフォルトの名無しさん
2011/01/13(木) 15:31:470983デフォルトの名無しさん
2011/01/13(木) 15:32:14他に何かあればと思ったんですが・・・
0984デフォルトの名無しさん
2011/01/13(木) 15:33:09やってみます!
0985デフォルトの名無しさん
2011/01/13(木) 15:36:46俺は基本的に例外はかせたくないタイプ
例外は本当に例外の時だけ 捕まえれるものは捕まえたい
0986デフォルトの名無しさん
2011/01/13(木) 15:42:25順番にやっていけ
http://cs2ch.blog123.fc2.com/blog-entry-1.html
0987デフォルトの名無しさん
2011/01/13(木) 15:50:26C/C++時代のようにリターンコードを見るって感じじゃないみたいね
一応try catchもcatch側で細かいエラータイプをみれるようだけど
0988デフォルトの名無しさん
2011/01/13(木) 15:59:29command.CommandText = "create table Id_Name (id char NOT NULL primary key, name char)";
command.ExecuteNonQuery();
}
catch(Exception)
{
MessageBox.Show("NOT NULL or primary key ERROR!!");
return;
}
これでエラーを出すことが出来ました。
>>985さん同様例外はかせたくないのですが
データ量がこれから多くなります・・・
水際でキャッチというのもよくわからなかったので><
0989デフォルトの名無しさん
2011/01/13(木) 16:00:58catch(Exception)
になっているんですけど
Exception以外のほうがいいんですかね??
0990デフォルトの名無しさん
2011/01/13(木) 16:04:20CatchはDuplicationExceptionとか、重複した時に(に限らず想定できるもの)起こりうるような例外だけにして、
それ以外の物はキャッチするなり、しないなりしてリソースとかを適切に処理した後、
再度スローして任せるようにしたりするのはどう?
0991990
2011/01/13(木) 16:05:06これ
もし、UnhandledExceptionとかで捕捉してるなら
の間違い
0992デフォルトの名無しさん
2011/01/13(木) 16:10:21このtrycatchの外でも
違う場所で例外が出る可能性があるので
trycatchしています。
それもExceptionになってます。
trycatchが二重になっているといえばわかるでしょうか?
DuplicationExceptionとは、初めて聞きました。
ネットで調べてみたのですが
よくわかりません・・・
catch(DuplicationException)としてみると
usingディレクトリまたはアセンブリ参照が不足しています
と出てしまいます。
何をusingすればいいですか???
レス数が950を超えています。1000を超えると書き込みができなくなります。