FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour Scrollers on object
Posts: 1392
Joined: Mon May 14, 2007 09:49 AM
Scrollers on object
Posted: Fri May 16, 2025 07:33 PM
An HTML page is open in the webview. Is it possible to determine the presence/absence of vertical/horizontal scrollers on this object ?
In this case :Winstyle(WS_HSCROLL) and :Winstyle(WS_VSCROLL) always return .F. (I also tried with Active IE and got a similar result) :(
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Scrollers on object
Posted: Fri May 16, 2025 08:06 PM
Since the webview renders an HTML page, you can use JavaScript to inspect the presence of scrollbars by checking the content's dimensions against the viewport. You can inject JavaScript into the webview to determine if scrollbars are present.
function hasScrollbars() {
    const hasVertical = document.documentElement.scrollHeight > document.documentElement.clientHeight;
    const hasHorizontal = document.documentElement.scrollWidth > document.documentElement.clientWidth;
    return {
        vertical: hasVertical,
        horizontal: hasHorizontal
    };
}
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1392
Joined: Mon May 14, 2007 09:49 AM
Re: Scrollers on object
Posted: Fri May 16, 2025 08:30 PM

Thanks, I got it!

Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: Scrollers on object
Posted: Sat May 17, 2025 09:19 AM
<!DOCTYPE html>
<html lang="it">
<head>
  <meta charset="UTF-8">
  <title>Pannello con scroll verticale</title>
  <style>
    .pannello-scroll {
      width: 300px;
      height: 200px; /* Altezza fissa */
      border: 1px solid #ccc;
      padding: 10px;
      overflow-y: auto; /* Scroll verticale */
      background-color: #f9f9f9;
    }
  </style>
</head>
<body>

  <div class="pannello-scroll">
    <p>Contenuto linea 1</p>
    <p>Contenuto linea 2</p>
    <p>Contenuto linea 3</p>
    <p>Contenuto linea 4</p>
    <p>Contenuto linea 5</p>
    <p>Contenuto linea 6</p>
    <p>Contenuto linea 7</p>
    <p>Contenuto linea 8</p>
    <p>Contenuto linea 9</p>
    <p>Contenuto linea 10</p>
  </div>

</body>
</html>
This Is a panel With vertical scroll, or you can use JavaScript tò determinate if there Is vertical or Horizontal scroll you must use JavaScript
const pannello = document.querySelector('.pannello-scroll');

const haScrollVerticale = pannello.scrollHeight > pannello.clientHeight;
const haScrollOrizzontale = pannello.scrollWidth > pannello.clientWidth;

console.log("Scroll verticale:", haScrollVerticale);
console.log("Scroll orizzontale:", haScrollOrizzontale);
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com
Posts: 1392
Joined: Mon May 14, 2007 09:49 AM
Re: Scrollers on object
Posted: Sat May 17, 2025 10:20 AM

Hi, Silvio

Your option worked perfectly !!!

Continue the discussion