エディットボックスへD&Dでファイルサイズを取得して表示

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
よるいち
記事: 2
登録日時: 2006年11月19日(日) 12:01
お住まい: 京都市

エディットボックスへD&Dでファイルサイズを取得して表示

#1 投稿記事 by よるいち »

プログラミング初めて3日ぐらいの初心者ですが宜しくお願いします。

エディットボックスにファイルをD&Dし、そのファイルサイズを取得して
エディットボックスにバイト数で表示させたいのですが、どのように書けば宜しいでしょうか?

検索して似た感じの物を色々書き方を変えたりしたのですが出来ませんでした
初歩的な質問だと思いますが宜しくお願いします。。
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

Re: エディットボックスへD&Dでファイルサイズを取得して表示

#2 投稿記事 by 7 »

> 初歩的な質問だと思いますが宜しくお願いします。。
どこをどう判断して初歩的だと判断したんでしょう?初歩的だと思ったのならご自分で実装できるのでは???
※些細な疑問なので無視して下さって構いません

> エディットボックスにファイルをD&Dし、そのファイルサイズを取得して
> エディットボックスにバイト数で表示させたいのですが、どのように書けば宜しいでしょうか?
  • 1. エディットボックスがドラッグ&ドロップを受け付けるようにする
    • 1. RADツールを使うかDragAcceptFiles()関数を使う
    2. エディットボックスでドラッグ&ドロップに対応する
    • 1. エディットボックスをサブクラス化する
      • 1. WM_DROPFILESを受信したときの処理を定義する
        • 1. ドロップされたファイルのサイズを取得する
          2. エディットボックスにファイルのサイズを出力する
こんな感じでしょうか。
限定的な機能なので改良の余地があります。
分からないことや疑問があるなら続けてどうぞ。答えられるか分かりませんけど...。
よるいち
記事: 2
登録日時: 2006年11月19日(日) 12:01
お住まい: 京都市

エディットボックスへD&Dでファイルサイズを取得して表示

#3 投稿記事 by よるいち »

回答頂き有難うございます。
想像していたより複雑で長いコードになるんですね、何も解らず勝手に初歩的なのかなと誤解してました。

とりあいず頂いたコードをそのままコンパイルしてみたのですが、下記のエラーが出ました。

MainWnd.sbp(25) - "WNDPROC" 無効な識別子です
MainWnd.sbp(55) - "OldEditProc" 無効な識別子です
MainWnd.sbp(55) - [警告] "SetWindowLong"の第3パラメータが、VoidPtrからLongに強制変換されています。
MainWnd.sbp(55) - "WNDPROC" 無効な識別子です

どのように直せば良いのか、まだ自分では解らないので、宜しかったら教えて下さい。
7
記事: 473
登録日時: 2005年5月31日(火) 18:51
お住まい: 新潟県
連絡する:

Re: エディットボックスへD&Dでファイルサイズを取得して表示

#4 投稿記事 by 7 »

> とりあいず頂いたコードをそのままコンパイルしてみたのですが、下記のエラーが出ました。
>
> MainWnd.sbp(25) - "WNDPROC" 無効な識別子です
> MainWnd.sbp(55) - "OldEditProc" 無効な識別子です
> MainWnd.sbp(55) - [警告] "SetWindowLong"の第3パラメータが、VoidPtrからLongに強制変換されています。
> MainWnd.sbp(55) - "WNDPROC" 無効な識別子です
>
> どのように直せば良いのか、まだ自分では解らないので、宜しかったら教えて下さい。
Dim OldEditProc As WNDPROCというのをDim OldEditProc As LONG_PTRDim OldEditProc As Longに変えてみてください。
ActiveBasicのバージョンの違いでちょっと変数の型が宣言されてなかったりして通らないんですよね。
返信する