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

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

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

全過去ログを検索

<< 0 >>
■3478  Re[3]: 一次元野球ゲーム
□投稿者/ HiJun -(2007/05/11(Fri) 09:55:54)
    学校の宿題を他の人につくってくれは、どうかと思いますよ。

    やはり他人に教えてもらうだけでは自身の技術の向上は見込めません。
    駄目でもいいから、作ってみることが大切です。
    失敗したなら、失敗したところを修正すればいいのですから...


記事No.3473 のレス /過去ログ12より / 関連記事表示
削除チェック/

■6093  Re[3]: DataGridViewの行選択時における反転表示の調整
□投稿者/ 魔界の仮面弁士 -(2007/07/31(Tue) 21:21:31)
    各 Brush の Dispose (または Using ステートメント) が抜けているような。
記事No.6075 のレス /過去ログ16より / 関連記事表示
削除チェック/

■7122  Re[4]: propertyGridで、プロパティ値を日本語表示したい
□投稿者/ nbmyou -(2007/08/30(Thu) 13:46:17)
    Hongliang さん

    ありがとうございます。

    プロパティ名を変更する際には、
    「PropertyGridコントロールに表示されるプロパティ名を変更するには?」
    のコードまる写しで使ってしまったので、内容をよく理解していませんでした。

    が、これと同じような方法で、enumのアイテムもstring変換できるということですね。
    イメージとしてだけですが、大体意味は理解できました。

    ちょっと勉強しながら、EnumConverter からの派生クラスを作成して、試してみますね。
    どうもありがとうございます。
    また、報告いたします。
記事No.7087 のレス /過去ログ18より / 関連記事表示
削除チェック/

■10184  Re[1]: SQL Server 2005 他のマシンから接続したい 
□投稿者/ はつね -(2007/11/13(Tue) 01:21:39)
記事No.10180 のレス /過去ログ23より / 関連記事表示
削除チェック/

■21367  Re[2]: 命名規則やモジュール構成
□投稿者/ オガシン -(2008/07/01(Tue) 12:54:59)
    通りすがり さん 返信ありがとうございます。

    > 似たようなスレとかあったと思うんだけど。
    > そういうのを参考にしてからスレを起こした方がいいと思うよ。うん。

    申し訳ございません。過去ログ探してきます。
    失礼しました(汗
記事No.21355 のレス / END /過去ログ41より / 関連記事表示
削除チェック/

■22870  Re[1]: みなさま…(;;)お励ましを…(::)
□投稿者/ とおりすがり -(2008/08/05(Tue) 07:20:49)
    会社とは基本的に社会に貢献し利益を追求する事が使命です。
    社員は会社に利益を生み出すような貢献をしなければなりません

    経営者は t6_kana さん にどう動いてもらう事が理にかなっているのか
    考えていると思いますが t6_kana さんには C#でプログラムさせた方が
    稼いでくれると確信させることができれば同じ立場で働き続けることが
    できるますね。

    そのためには納得できるような結果を提示するか、結果を出してくれそ
    うだと確信させればいいわけです。

    C#でこんなプログラムが作れるようになりました!ってプレゼンさせて
    もらって、それで判断してもらうチャンスをもらいましょう

    でも文章を読んでいると営業で成功できるかも知れない(^^
記事No.22867 のレス /過去ログ43より / 関連記事表示
削除チェック/

■39023  Re[1]: C#でOracle接続
□投稿者/ カドルドエグ -(2009/07/29(Wed) 14:22:52)
    No39021 (どい さん) に返信
    > つい3日ほど前からC#の勉強を始めた超初心者です。
    とのことなのでもしかしたらちょっと難しいかもですが…。
    ここを参考にしてみてはいかがでしょうか。

    Oracle 起動に関するエラー
    ORA-12154: TNS: 指定された接続識別子を解決できませんでした
    http://www.shift-the-oracle.com/oerrs/ora-12154.html


    知らないエラーが出たら、慣れないうちは
    まずエラー文(のメイン部分)でそのまま検索
    (今回なら「ORA-12154: TNS: 指定された接続識別子を解決できませんでした」)
    してみるとよいかと思います。

記事No.39021 のレス /過去ログ67より / 関連記事表示
削除チェック/

■88449  Re[8]: 子ウインドウのフォームがWin7になる
□投稿者/ ソニン -(2018/09/01(Sat) 20:19:56)
    >魔界の仮面弁士 さん
    
    
    > 通常の SDI における「子.Show(親)」で表示させる方法ではなく、
    > あくまでも親のクライアント領域内に子を表示させる画面構成でしょうか。
    
    これはどういう画面構成のことをさしていますか?
    自分としては、
    通常の MDI における「子.Show(親)」で表示させる方法を使うつもりですので
    異なる方法でしょうか?
    
    
    
    >とっちゃん さん
    
    検索して調べたところ、恐らくこの方法を使えばいけると思います。
    
    https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1475227379
    
    翻訳サイトを使ってVBに変換したのですが
    
                InitializeComponent()
                Dim hwnd As IntPtr = Form1.GetWindow(Me.Handle, GW_CHILD)
                        Me.wpd = New WndProcDelegate(NewWndProc)
    
    
    の三カ所でエラーが出てしまいます。
    
    
    一体どのように修正すればよろしいでしょうか?
    
    
            Private Declare Function GetWindow Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal uCmd As Integer) As IntPtr
    
            Private Declare Function GetClassName Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal lpClassName As StringBuilder, ByVal nMaxCount As Integer) As Integer
    
            Private Declare Function SetWindowLong Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal nIndex As Integer, ByVal NewWndProc As WndProcDelegate) As IntPtr
    
            Private Declare Function SetWindowLongPtr Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal nIndex As Integer, ByVal NewWndProc As WndProcDelegate) As IntPtr
    
            Private Declare Function CallWindowProc Lib "user32.dll" (ByVal lpPrevWndFunc As IntPtr, ByVal hWnd As IntPtr, ByVal Msg As UInteger, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
    
            Private Const GW_HWNDNEXT As Integer = 2
    
            Private Const GW_CHILD As Integer = 5
    
            Private Const WM_NCCALCSIZE As Integer = 131
    
            Private Const GWL_WNDPROC As Integer = -4
    
            Private PrevWndProc As IntPtr
    
            Public Delegate Function WndProcDelegate(ByVal hWnd As IntPtr, ByVal uMsg As UInteger, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
    
            Private wpd As WndProcDelegate
    
            Public Sub New()
                MyBase.New
                InitializeComponent()
            End Sub
    
            Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
                Dim sb As StringBuilder = New StringBuilder(100)
                Dim hwnd As IntPtr = Form1.GetWindow(Me.Handle, GW_CHILD)
    
                While (hwnd <> IntPtr.Zero)
                    Form1.GetClassName(hwnd, sb, sb.Capacity)
                    If (sb.ToString.IndexOf("MDICLIENT") <> -1) Then
                        Me.wpd = New WndProcDelegate(NewWndProc)
                        If (IntPtr.Size = 4) Then
                            Me.PrevWndProc = Form1.SetWindowLong(hwnd, GWL_WNDPROC, Me.wpd)
                        Else
                            Me.PrevWndProc = Form1.SetWindowLongPtr(hwnd, GWL_WNDPROC, Me.wpd)
                        End If
    
                        Return
                    End If
    
                    hwnd = Form1.GetWindow(hwnd, GW_HWNDNEXT)
    
                End While
    
            End Sub
    
            Private Function NewWndProc(ByVal hWnd As IntPtr, ByVal uMsg As UInteger, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
                If (uMsg = WM_NCCALCSIZE) Then
                    Return 0
                End If
    
                Return Form1.CallWindowProc(Me.PrevWndProc, hWnd, uMsg, wParam, lParam)
            End Function
        End Class
    
    
    
記事No.88393 のレス /過去ログ152より / 関連記事表示
削除チェック/

■88511  Re[9]: 子ウインドウのフォームがWin7になる
□投稿者/ 魔界の仮面弁士 -(2018/09/05(Wed) 00:52:11)
    No88449 (ソニン さん) に返信
    >>通常の SDI における「子.Show(親)」で表示させる方法ではなく、
    >>あくまでも親のクライアント領域内に子を表示させる画面構成でしょうか。
    > これはどういう画面構成のことをさしていますか?
    > 自分としては、
    > 通常の MDI における「子.Show(親)」で表示させる方法を使うつもりですので
    > 異なる方法でしょうか?
    
    親フォームが「Owner プロパティ」と「MdiParent プロパティ」の
    いずれで管理されているのか、ということです。
    
    たとえば、
     MDIParentForm.Show()
     MDIChildForm.MdiParent = MDIParentForm
     MDIChildForm.Show(MDIParentForm)
    のような記述はエラーになりますよね。
    
    ※ MDIParentForm.Show(他フォーム) は OK
    
    
    
    
    >> 検索して調べたところ、恐らくこの方法を使えばいけると思います。
    >> https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1475227379
    > 翻訳サイトを使ってVBに変換したのですが
    
    意訳してみました。
    MDI 親フォームに「MdiClientScrollBars プロパティ」を実装しています。
    
    
    Option Strict On
    Option Explicit On
    Imports System.ComponentModel
    Imports System.Runtime.InteropServices
    
    Partial Public NotInheritable Class MDIParent1
        Inherits System.Windows.Forms.Form
    
    #Region "MdiClientScrollBars プロパティ / IsMdiContainer が True の時に、MdiClient にスクロールバーが表示されるかどうかを示す値を取得または設定します"
        ''' <summary>
        ''' <see cref="IsMdiContainer"/>が<code>True</code>の時に、<see cref="MdiClient"/>にスクロールバーが表示されるかどうかを示す値を取得または設定します
        ''' </summary>
        <DefaultValue(False)>
        Public Property MdiClientScrollBars As Boolean
            Get
                Return IsMdiContainer AndAlso _MdiClientScrollBars
            End Get
            Set(value As Boolean)
                _MdiClientScrollBars = MdiClientProcWithoutScrollbars(value)
            End Set
        End Property
        Private _MdiClientScrollBars As Boolean = False
    #End Region
    
    
    #Region "API 宣言"
        Private Const GWL_WNDPROC As Integer = -4
        Private Delegate Function WndProcDelegate(hWnd As IntPtr, ByVal uMsg As UInteger, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
        Private Declare Auto Function SetWindowLongPtr32 Lib "user32" Alias "SetWindowLong" (hWnd As HandleRef, nIndex As Integer, dwNewLong As IntPtr) As IntPtr
        Private Declare Auto Function SetWindowLongPtr64 Lib "user32" Alias "SetWindowLongPtr" (hWnd As HandleRef, nIndex As Integer, dwNewLong As IntPtr) As IntPtr
        Private Declare Auto Function CallWindowProc Lib "user32" (lpPrevWndFunc As IntPtr, hWnd As IntPtr, Msg As UInteger, wParam As IntPtr, lParam As IntPtr) As IntPtr
        Private Shared ReadOnly SetWindowLongPtr As Func(Of HandleRef, Integer, IntPtr, IntPtr)
        Shared Sub New()
            If IntPtr.Size = 8 Then
                SetWindowLongPtr = AddressOf SetWindowLongPtr64
            Else
                SetWindowLongPtr = AddressOf SetWindowLongPtr32
            End If
        End Sub
    #End Region
    
    #Region "MdiClient の取得処理"
        'MdiClient を保持する変数。OnControlAdded / OnControlRemoved で更新される。
        Private MdiClientHandle As HandleRef = New HandleRef(Nothing, IntPtr.Zero)
    
        '本来のプロシージャ
        Private MdiClientOriginalProc As IntPtr = IntPtr.Zero
    
        'CallbackOnCollectedDelegate 対策のため、GC されないよう保持しておく
        Private MdiClientProc As WndProcDelegate = Nothing
    
        Protected Overrides Sub OnControlAdded(e As ControlEventArgs)
            MyBase.OnControlAdded(e)
            If TypeOf e.Control Is MdiClient Then
                MdiClientHandle = New HandleRef(e.Control, e.Control.Handle)
            End If
        End Sub
        Protected Overrides Sub OnControlRemoved(e As ControlEventArgs)
            If TypeOf e.Control Is MdiClient Then
                If MdiClientOriginalProc <> IntPtr.Zero Then
                    'MdiClient が削除される前にサブクラス化を解除しておく
                    SetWindowLongPtr(MdiClientHandle, GWL_WNDPROC, MdiClientOriginalProc)
                    MdiClientOriginalProc = IntPtr.Zero
                End If
                MdiClientHandle = New HandleRef(Nothing, IntPtr.Zero)
            End If
            MyBase.OnControlRemoved(e)
        End Sub
    #End Region
    
    #Region "MDI のスクロールバー制御"
        Private Function MdiClientProcWithoutScrollbars(visible As Boolean) As Boolean
            If Not IsMdiContainer OrElse MdiClientHandle.Handle = IntPtr.Zero Then
                Return False
            End If
            Dim mc = TryCast(MdiClientHandle.Wrapper, MdiClient)
            If mc Is Nothing Then
                Return False
            End If
            If visible Then
                If MdiClientOriginalProc <> IntPtr.Zero Then
                    'サブクラス化解除
                    SetWindowLongPtr(MdiClientHandle, GWL_WNDPROC, MdiClientOriginalProc)
                    MdiClientOriginalProc = IntPtr.Zero
                End If
            Else
                If MdiClientOriginalProc = IntPtr.Zero Then
                    'サブクラス化
                    MdiClientProc = New WndProcDelegate(AddressOf MdiClientProcWithoutScorollbars)
                    MdiClientOriginalProc = SetWindowLongPtr(MdiClientHandle, GWL_WNDPROC, Marshal.GetFunctionPointerForDelegate(MdiClientProc))
                End If
            End If
            'リサイズすることで、スクロールバーを強制再描画させる
            '(ただし mc.Dock は Fill なので、実際にはリサイズされない)
            mc.Width -= 1
            Return visible
        End Function
    
        Private Function MdiClientProcWithoutScorollbars(hWnd As IntPtr, uMsg As UInteger, wParam As IntPtr, lParam As IntPtr) As IntPtr
            'サブクラス化して WM_NCCALCSIZE を無視する
            Const WM_NCCALCSIZE As UInteger = 131UI
            Return If(uMsg = WM_NCCALCSIZE, IntPtr.Zero, CallWindowProc(MdiClientOriginalProc, hWnd, uMsg, wParam, lParam))
        End Function
    
        Protected Overrides Sub OnLoad(e As EventArgs)
            MyBase.OnLoad(e)
            'MdiClient のスクロールバーの状態を更新する
            _MdiClientScrollBars = MdiClientProcWithoutScrollbars(IsMdiContainer AndAlso _MdiClientScrollBars)
        End Sub
    #End Region
    
    End Class
記事No.88393 のレス /過去ログ152より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -