我將WebKit嵌入Windows C++應用程序中。我正在使用開羅港。它工作正常。禁用WebKit中的滾動條(平面框架模式)
我想禁用客戶區可以顯示更多數據時出現的滾動條。像iPhone一樣,iPhone沒有滾動條,滾動的實現方式也不同。
如何以編程方式禁用滾動條,使用C++(無Javascript黑客)?
更新:
我試着打電話給HRESULT IWebFrame::setAllowsScrolling(BOOL flag)
。爲了獲得IWebFrame接口,我打電話給HRESULT IWebView::mainFrame(IWebFrame **frame)
。這似乎並不奏效。滾動條仍然出現。我究竟做錯了什麼?這不是我主要關注的主要框架嗎?
更新:
我試圖使平框的模式是這樣的:
IWebPreferences *Preferences;
hr = pWebView->preferences(&Preferences);
if (FAILED(hr))
goto exit;
IWebPreferencesPrivate *PrivatePreferences = 0;
hr = Preferences->QueryInterface(IID_IWebPreferencesPrivate, (void **)&PrivatePreferences);
if (FAILED(hr))
goto exit;
hr = PrivatePreferences->setFrameSetFlatteningEnabled(TRUE);
if (FAILED(hr))
goto exit;
的代碼運行正常,但好像沒有什麼改變。我在這裏做錯了什麼?
更新:
我收到的建議創建主窗口的時候,我可能包括WS_VSCROLL。這種情況並非如此:
MainWindow = CreateWindow(
WindowClass,
WindowTitle,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
0,
iPhoneXRes + 16 + 20,
iPhoneYres + 110,
NULL,
NULL,
hInstance,
NULL
);
感謝,