C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 >>
■24134  Re[13]: 型指定子を認識してくれない
□投稿者/ ネタ好き未記入 -(2008/08/28(Thu) 10:40:07)
    >この話とC++0xに何の関係があるのかわかりません

    実装をまだ見ていなかったので、もしかしたらC++0x特有の機能を使用する事を想定しているのかな?
    と考えました。
    でも、後で考えると違う様な気もしていますw
記事No.24045 のレス /過去ログ45より / 関連記事表示
削除チェック/

■33657  Re[1]: USBフラッシュメモリのサイズを取得したい
□投稿者/ オショウ -(2009/03/06(Fri) 06:13:27)
    > ストレージの物理サイズを取得する必要が有ったので、WMIクラスから情報を取得したのですが、
    > USBフラッシュメモリだと実際のサイズより小さいサイズがとれてきました。
    > 何が駄目なのか、どうやれば物理サイズをとれるのかが分かる人がいらっしゃいましたら教示を
    > お願いします。

      http://dobon.net/vb/dotnet/file/freespace.html

      ここの記事の内容をお試し下さい。

    以上。
記事No.33615 のレス /過去ログ59より / 関連記事表示
削除チェック/

■69385  別クラスからフォームの操作をしたい
□投稿者/ クー、 -(2013/12/21(Sat) 15:32:48)

    分類:[C#] 

    Visual Studio 2010のC# WindowsFormアプリケーションでプログラムを作っているのですが、
    不明な点が出てきたので、質問させて頂きます。

    (別ファイルの)別クラスで処理をさせて、処理の途中で進行状況を文字列で送って、Form画面に表示させたいのですが、
    その動作を行うようにしても、フォーム側に変化がなく、そのクラスの処理が全て終わると、文字列がForm画面に表示されます。
    ブレークポイントを置いて、処理を見てみましたがプログラムは問題なく流れているのですが、表示の更新はされません。
    ただし、処理の途中でmessagebox.showを行うと、送っているはずの文字列で送って、Form画面に表示されます。
    Thread.Sleep()などを置いてみましたが、それの場合は文字列は更新されません。

    そのコードは少し長いので、別クラスからフォームを触るとこだけを貼ります。
    -----------------
    Form1.cs

    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    f1 = this;
    }
    public static Form1 f1;

    public void update(string message)
    {
    label1.Text = message;
    }

    private void button1_Click(object sender, EventArgs e)
    {
    Class1 sample = new Class1();
    }
    }
    -------------
    Class1.cs

    class Class1
    {
    public Class1()
    {
    Form1.f1.update("こんにちは");
    Thread.Sleep(2000);
    Form1.f1.update("こんばんは");

    }
    }
    --------------
    ※実際はThread.Sleepを起きませんが、動作を確認するために置いてみました。
     Thread.Sleepを置かずに、ブレークポイントで処理の流れを確認しましたが、同じ症状で、
     Form1.f1.update("こんにちは");がpublic void update(string message)に移って、エラー無しで動くのですが、
     画面上には変化がありません。

    不慣れなもので、文章が読みづらいかと思いますが、よろしくお願いします。
親記事 /過去ログ118より / 関連記事表示
削除チェック/

■85811  Re[4]: 指数表記する方法
□投稿者/ 魔界の仮面弁士 -(2017/11/26(Sun) 19:36:47)
    No85807 (ちゃんころ さん) に返信
    > Public Const diele As Single = 8.85418782E-12#
    > というのが
    > Public Const diele As Single = 0.00000000000885418782
    > というのに変わってしまいます。
    
    VB のエディタは、極力、小数表記で記述しようとするためです。
    その境目となるのは、おそらく指数部の桁数でしょう。
    
    Double 型リテラルの場合、E+14〜E-16 の範囲は小数表記、その範囲外が指数表記になり、
    Single 型リテラルの場合、E+6〜E-8 の範囲が小数表記、その範囲外が指数表記になります。
    Decimal 型リテラルはの場合は、すべて小数表記にフォーマットされます。
    
    
    > どうすれば良いですか?
    
    今回の「8.85418782E-12」という表現からして、有効桁数 9 桁の値を表現したいようですが、
    Hongliang さんから指摘のあるとおり、Single 型ではこの精度の値を扱うことはそもそも出来ません。
    どう修正すべきかは、求める要件によって変わりますが、有効桁数 9 桁が本当に必要なら、
    As Double にするか、As Decimal にする必要があるでしょう。
    
    より正確に言えば、
    Double 型の仮数部の幅は、53+1ビット≒15.95 桁分であるのに対し、
    Single 型の仮数部の幅は、23+1ビット≒7.225 桁分しかないということです。
    ちなみに Decimal 型の場合は 96 ビット幅なので、約 28.89888 桁です。
    
    有効桁数 9 桁の値を Single 型で管理するには有効桁数が不足してしまい、
    どうあっても、格納時には近似値に丸められることになるでしょう。
    
    確認のため、「8.85418782E-12」相当の近似値を Single 型で表現してみましょうか。
    先に言っておくと、誤差が最小になるのは 3 番です。
    
    《Single のバイナリ表現》
    1: 0b00101101000110111100001110110110
    2: 0b00101101000110111100001110110111
    3: 0b00101101000110111100001110111000
    4: 0b00101101000110111100001110111001
    5: 0b00101101000110111100001110111010
    
    《上記を 10進小数で表現した値》
    1: 0.00000000000885418648122193729932405403815209865570068359375
    2: 0.000000000008854187348583675287727601244114339351654052734375
    3: 0.000000000008854188215945413276131148450076580047607421875
    4: 0.000000000008854189083307151264534695656038820743560791015625
    5: 0.00000000000885418995066888925293824286200106143951416015625
    
    
    ちなみに上記を diele.ToString("R") でラウンドトリップ出力した場合、
    1: 8.85418648E-12
    2: 8.854187E-12
    3: 8.854188E-12
    4: 8.854189E-12
    5: 8.85419E-12
    となります。
    
    いずれも E-8 を下回る指数表現であるため、この場合は自動変換が起こりません。
     Public Const Sample1 As Single = 8.85418648E-12F
     Public Const Sample2 As Single = 8.854187E-12F
     Public Const Sample3 As Single = 8.854188E-12F
     Public Const Sample4 As Single = 8.854189E-12F
     Public Const Sample5 As Single = 8.85419E-12F
    
    もともと扱おうとしていた「8.85418782E-12F」という値は、
    2 番と 3 番の間になり、Single の精度では表現しきれません。
    そのため、より近い値である 3 番の表記に変換されたということです。
    (有効桁数ってそういうものですよね)
    
    
    > Doubleでも試してみたのですが
    
    同様に、「8.85418782E-12」の Double 値による近似値表現を見てみます。
    こちらの場合は、3 番が同一値となります。(格納誤差はありません)
    
    
    《Double のバイナリ表現》
    1: 0b0011110110100011011110000111011011110001011001000110011010111010
    2: 0b0011110110100011011110000111011011110001011001000110011010111011
    3: 0b0011110110100011011110000111011011110001011001000110011010111100
    4: 0b0011110110100011011110000111011011110001011001000110011010111101
    5: 0b0011110110100011011110000111011011110001011001000110011010111110
    
    《上記を 10進小数で表現した値》
    1: 0.0000000000088541878199999971451928483766392647021092887626991796423681080341339111328125
    2: 0.00000000000885418781999999876077998226927144218532939046184537801309488713741302490234375
    3: 0.000000000008854187820000000376367116161903619668549492160991576383821666240692138671875
    4: 0.00000000000885418782000000199195425005453579715176959386013777475454844534397125244140625
    5: 0.0000000000088541878200000036075413839471679746349896955592839731252752244472503662109375
    
    《R 書式によるラウンドトリップ出力》
    1: 8.8541878199999971E-12
    2: 8.8541878199999988E-12
    3: 8.85418782E-12
    4: 8.854187820000002E-12
    5: 8.8541878200000036E-12
    
    
    そして先述した通り、Double 型で E-12 の範囲は小数表記されるため、
     Public Const Sample1 As Double = 8.8541878199999971E-12R
     Public Const Sample2 As Double = 8.8541878199999988E-12R
     Public Const Sample3 As Double = 8.85418782E-12R
     Public Const Sample4 As Double = 8.854187820000002E-12R
     Public Const Sample5 As Double = 8.8541878200000036E-12R
    と書いても
     Public Const Sample1 As Double = 0.0000000000088541878199999971R
     Public Const Sample2 As Double = 0.0000000000088541878199999988R
     Public Const Sample3 As Double = 0.00000000000885418782R
     Public Const Sample4 As Double = 0.000000000008854187820000002R
     Public Const Sample5 As Double = 0.0000000000088541878200000036R
    に変換される結果になりますね。
記事No.85804 のレス /過去ログ147より / 関連記事表示
削除チェック/

■87607  ラジオボタンのif文の分岐
□投稿者/ N -(2018/06/13(Wed) 11:35:15)

    分類:[JavaScript] 

    html/jqueryの環境です。(テキストの拡張子をhtmlに変更して使用しています)

    勉強中の初心者です。
    ラジオボタン二つを使って、はいだったらラベルに項目を表示、いいえだったらラベルの項目を非表示にする。というものを作りたいと思っています。どちらも選択していない場合はエラーメッセージをだしています。

    このように書きました。
    jquery:
    $("form").submit("click",function(){
    //ラジオボタン
    if($("input[name='radiobutton']").checked==false){
    flag=1;
    }
    if($("#radio1").on("checked","ture")){
    $("#hyoji").css("display","");
    }else{
    $("#hyoji").css("display","none");
    }
    //エラーメッセージ
    if(flag==1){
    $("#label").css("display","");
    $("#label").css("color","red");
    }else{
    $("#label").css("display","none");
    }
    });
    });

    html:
    旅行がしたい<input id="radio1" name="radiobutton" type="radio"/><label for="radiobutton">はい</label>
    <input id="radio2"name="radiobutton" type="radio"/><label for="radiobutton">いいえ</label><p></p>
    <div id="hyoji" style="display:none;">・北海道 ・福岡 ・愛知</div><p></p>
    <input type="submit" value="送信">
    <span id="label" style="display:none;">※未入力の項目があります</span>


    エラーチェックは上手くいってもラジオボタンの表示、非表示が上手くいきません。また、送信ボタンを押すと、このページは表示できませんと表示されるのですが、どうしてその表示がでるのか分かりません。すみませんが、ご教授お願い致します。
親記事 /過去ログ150より / 関連記事表示
削除チェック/

■87609  Re[1]: ラシ゛オホ゛タンのif文の分岐
□投稿者/ 魔界の仮面弁士 -(2018/06/13(Wed) 11:57:12)
    掲示板投稿時の注意事項に
    『半角カナは使用しないでください。文字化けの原因になります。』
    という一文が記載されていたかと思います。次回以降、ご留意ください。


    No87607 (N さん) に返信
    > if($("#radio1").on("checked","ture")){

    true (トゥルゥー)が
    ture (つれぇ)になっていますよ。


    また、.on メソッドはイベント処理を紐付けるためのものであって、
    プロパティの状態を調べるためのものではありません。
    ラジオボタンの状態を取得する方法は、下記を参照してみてください。
    https://qiita.com/tomcky/items/d5f13f58228593658720


    > 送信ボタンを押すと、このページは表示できませんと表示されるのですが、
    『送信』するからには、送信先の相手が必要ですよね。
    存在しない送信先や、間違った送信先を指定していたりはしないでしょうか。

    送信先の Web サイトをどこに設定しているか(form要素のaction属性)
    いま一度確認してみてください。
記事No.87607 のレス /過去ログ150より / 関連記事表示
削除チェック/

■87611  Re[2]: ラシ゛オホ゛タンのif文の分岐
□投稿者/ N -(2018/06/13(Wed) 15:33:19)
    No87609 (魔界の仮面弁士 さん) に返信
    > 掲示板投稿時の注意事項に
    > 『半角カナは使用しないでください。文字化けの原因になります。』
    > という一文が記載されていたかと思います。次回以降、ご留意ください。
    > きちんと把握していませんでした。
    以後きをつけます。
    >
    > ■No87607 (N さん) に返信
    >>if($("#radio1").on("checked","ture")){
    >
    > true (トゥルゥー)が
    > ture (つれぇ)になっていますよ。
    >
    >
    > また、.on メソッドはイベント処理を紐付けるためのものであって、
    > プロパティの状態を調べるためのものではありません。
    > ラジオボタンの状態を取得する方法は、下記を参照してみてください。
    > https://qiita.com/tomcky/items/d5f13f58228593658720
    >
    参照して頂いたもので実装することができました。
    >
    >>送信ボタンを押すと、このページは表示できませんと表示されるのですが、
    > 『送信』するからには、送信先の相手が必要ですよね。
    > 存在しない送信先や、間違った送信先を指定していたりはしないでしょうか。
    >
    > 送信先の Web サイトをどこに設定しているか(form要素のaction属性)
    > いま一度確認してみてください。

    return false;をおいてむりやりぬけさせたらできました。
    これに関しては少し自分の方で調べてみたいと思います。
    ありがとうございました。
記事No.87607 のレス /過去ログ150より / 関連記事表示
削除チェック/

■87610  Re[1]: ラジオボタンのif文の分岐
□投稿者/ WebSurfer -(2018/06/13(Wed) 13:57:59)
    No87607 (N さん) に返信

    質問者さんは「初心者です。」さんと同一人物ですよね? であれば、利用規約
    を読んでください。

    肝心の部分を抜粋しておきます。

    "一貫して同じハンドルを使用し、場を混乱させないようにしましょう。
    同じハンドルの方が質問の背景がわかりやすいです (自作自演をしたり別人を
    装うのは回答者の善意を裏切る行為です)。"
記事No.87607 のレス /過去ログ150より / 関連記事表示
削除チェック/

■87612  Re[2]: ラジオボタンのif文の分岐
□投稿者/ N -(2018/06/13(Wed) 15:34:06)
    No87610 (WebSurfer さん) に返信
    > ■No87607 (N さん) に返信
    >
    > 質問者さんは「初心者です。」さんと同一人物ですよね? であれば、利用規約
    > を読んでください。
    >
    > 肝心の部分を抜粋しておきます。
    >
    > "一貫して同じハンドルを使用し、場を混乱させないようにしましょう。
    > 同じハンドルの方が質問の背景がわかりやすいです (自作自演をしたり別人を
    > 装うのは回答者の善意を裏切る行為です)。"

    すみませんでした。
記事No.87607 のレス / END /過去ログ150より / 関連記事表示
削除チェック/

■94584  圧縮・解凍をメモリ上で行う方法
□投稿者/ gegege -(2020/04/23(Thu) 11:07:41)

    分類:[.NET 全般] 

    VB.NETに関する質問です。


    バイナリファイルを出力する時に、バイナリの一部をZipやLZH、RARなどの圧縮形式に変換して保存したいと考えています。

    VSに標準で付いているZipFileクラスやZipArchiveクラスだと
    ファイルを介した方法をサポートしていないと思います。

    もし、これを使うのだとすると、
    圧縮したいバイナリの一部だけを一旦ファイルとして保存してから
    Zip圧縮し、その圧縮ファイルをバイナリとして読み込んで
    先ほどのバイナリの一部に埋め込むというような行程が必要となります。

    これをHDD/SSDを使わずにメモリー上で行いたいのですが、
    メモリー上で圧縮・解凍をサポートしているDLLはございますでしょうか?
親記事 /過去ログ164より / 関連記事表示
削除チェック/

■94585  Re[5]: 別アプリに文字列を送信していますがIMEがONだと文字化け
□投稿者/ Tom -(2020/04/23(Thu) 11:08:44)
    魔界の仮面弁士 さま
    kumakuma さま
    Hongliang さま
    
    アドバイスありがとうございました。
    いろいろ調べ、いろいろいじっていたところ、なんとかうまくいきました。
    実は書き込んだ後に半角カナも文字列内に存在することがわかり頭を抱えていたのですが、
    もっかい初心にもどりSendMessageを調べていたら下記コードで動作しましたので、一応記載しておきます。
    
    [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = false)]
    public static extern int SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, string lParam);
    public const uint WM_SETTEXT = 0x000C;
    
    SendMessage(hWnd, WM_SETTEXT, IntPtr.Zero, "A1あイ2ウ愛");
    
    
記事No.94574 のレス / END /過去ログ164より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -