2016-06-12 5 views
3

どのように非表示にするか、最小化し、最大化するために、ボタンとawesomiumアプリケーションの周りのエッジ?

enter image description here

私は素敵なクローズを設計する方法を探しています、最大限...、ネイティブに近いを隠し最大化ボタンとawesomiumアプリケーションをholdesウィンドウの周囲のエッジを最小限に抑えることが可能ですHTML文書内のボタンを最小化すると、ネイティブボタンの機能が隠されます。ここ

は私のC++コードは、私のhtmlファイルの

// Inherited from Application::Listener 
    virtual void OnLoaded() { 
    view_ = View::Create(500, 300); 

    WebURL url(WSLit("file:///C:/Users/awesomium/Documents/app.html")); 
    view_->web_view()->LoadURL(url); 
    } 

内容であることに注意してください

<html> 
<body> 
<h1>Hello World</h1> 
<script type="text/javascript"> 
document.write("You are running Awesomium " + awesomium.version); 
</script> 
</body> 
</html> 

を下回っている:私は(ある意味で)awesomiumとC++にはかなり新しいです。これをシンプルにすることは素晴らしいことです!

答えて

4

作成されたWindowsウィンドウの特性は、CreateWindowの呼び出しでdwStyleプロパティを設定することで制御します。

は私がAwesomiumチュートリアル2( http://wiki.awesomium.com/tutorials/tutorial-2-displaying-your-first-page.html

ViewWin(int型の幅、int型の高さ)コンストラクタを見つけてのcreateWindowへの呼び出しを編集を使用していました。次の例では、境界線もキャプションもないウィンドウを作成します。私はそれを試したとき

hwnd_ = CreateWindow(
      szWindowClass, 
      szTitle, 
      WS_POPUP | WS_VISIBLE | WS_SYSMENU, 
      CW_USEDEFAULT, 
      CW_USEDEFAULT, 
      width + 20, 
      height + 40, 
      NULL, 
      NULL, 
      hInstance, 
      NULL); 

私はので、私は、アプリケーションの実行を行うためにクイックフィックスを追加しましたWndProcを事前分別(ビューポインタまだNULL)と呼ばれているとの問題を得ました。

LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) { 

... 

case WM_SIZE: 
    if (view == NULL) return 0; // Quick fix to not call view until it is fully initialized 
    view->web_view()->Resize(LOWORD(lParam), HIWORD(lParam)); 
break; 

... 

これは方法ではない可能性があります。作成したウィンドウには、次のようになります。

Awesomium "Hello World" with no caption nor borders

私は、これはあなたがそれを好きなようにアプリケーションが動作させるためにトラックにあなたを得ることを願っていますか?

+0

私はカーネルをアップグレードした後に... wesomiumが起動できませんでした。私はウェブを閲覧して、カーネル3.0以上でLinux上でawesomium webkitを実行しているバグが見つかりました。アップグレード後にこれをテストしてください。私はスナップショットを見てあなたの努力を受け入れるでしょう....:D – repzero

+0

こんにちは!あなたはLinux上にいますか?申し訳ありませんが、あなたの例がWindowsのウィンドウのように見えるので、私の例がWindows用であることを認めなければなりませんか?基本的な考え方はまだありますが、LinuxプラットフォームのWindows作成呼び出しの定義を読む必要があります。私はあなたのためにLinuxプラットフォームの答えを見つけるために周りに行くが、私はあなたに約束を与えることはできませんが表示されます。 –

+0

@ Kjell-OlovHögdahl...私はLinux上にあります。あなたがLinuxでテストしたときはいつでも、あなたの答えに追加してください。ありがとう – repzero

関連する問題