2011-07-26 3 views
2

IUP.GetParmダイアログを使用して検索と置換のプロンプトを実行しています。 このダイアログでは、3つのボタンがサポートされています。最初の2つはOKで、プロンプトを閉じてメインプログラムフローに戻ります。GetParmのコールバックからOKをトリガする

parm_action関数で3番目のボタンを追跡することができます。3番目のボタンを使用して項目をスキップしてダイアログを閉じることができますが、これが可能であれば解決できません。

IUPメーリングリストでこれを尋ねましたが、まだ回答がありません。

function param_action(dialog,index) 
    if index == -4 then 
    bSkip = true 
    return 1 
    end 
end 
    bSkip = false 
    bConfirm,strFromString,strToString,bSkip = 
    iup.GetParam("Search and Replace", 
    param_action, 
    fhGetTag(ptrRecord)..'-'..fhGetTag(ptr).. 
    ' '..fhGetDisplayText(ptrRecord).." %t\n".. 
    "Replace: "..strBoxType.."\n".. 
    "With: "..strBoxType.."\n".. 
    "btn: %u[Ok,Cancel,Skip] \n" 
    , strFromString,strToString) 
    if bConfirm and not(bSkip) then 
     -- replace string 
    end 

この機能を現在有効にするには、スキップボタンを押してから[OK]ボタンを押す必要があります。ただ、ここでIUPメーリングリストからの回答を再投稿

答えて

0

:コールバックの内側に

は、第三ボタンが押されたときに、「1」にダイアログ 属性「状態」を設定し、コール関数iup.ExitLoop()。

+1

ようこそスタックオーバーフロー!あなたの投稿にシグネチャ/タグラインを使用しないでください。あなたのボックスはあなたの署名として数えられ、あなたのプロフィールを使って好きな自分に関する情報を投稿することができます。 [署名/タグラインに関するよくある質問] –

+0

ここに新しいユーザーがいます。ちょうど私がやった他の投稿を修正したことに気づいた。ありがとう。 –

関連する問題