I trying to convert old program ( 16 bit) to xharbour and now my xmate make me errors :
::nWidth := pBmpWidth ( ::hBmp )
::nHeight := pBmpHeight( ::hBmp )
these func exist or not ?
Regards
Silvio
Help to antonio
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Help to antonio
Silvio,
::nWidth := nBmpWidth ( ::hBmp )
::nHeight := nBmpHeight( ::hBmp )
Use:Silvio wrote:I trying to convert old program ( 16 bit) to xharbour and now my xmate make me errors :
::nWidth := pBmpWidth ( ::hBmp )
::nHeight := pBmpHeight( ::hBmp )
these func exist or not ?
::nWidth := nBmpWidth ( ::hBmp )
::nHeight := nBmpHeight( ::hBmp )
this is one
and this another
Can You help me ...
Regards
Code: Select all
#include <WinTen.h>
#include <Windows.h>
#include <ClipApi.h>
CLIPPER xVScrll() // ( hWnd, wRows, nHRow, nRows, lHeader, nHeader )
{
HWND hWnd = _parni( 1 );
WORD wRows = _parni( 2 );
int nHRow = _parni( 3 );
int nRows = _parni( 4 );
HDC hDC = GetDC( hWnd );
RECT rct;
BOOL bHeader = _parl( 5 );
WORD nHeader = _parni( 6 );
GetClientRect( hWnd, &rct );
if ( bHeader )
rct.top = nHeader + 1;
rct.bottom = ( nHRow * nRows ) - 1;
ScrollWindowEx( hWnd, 0, -( nHRow * wRows ), 0, &rct, 0, 0, 0 );
ReleaseDC( hWnd, hDC );
}
//----------------------------------------------------------------------------//
CLIPPER xHScrll() // ( hWnd, nCols, nLeft, nRight )
{
HWND hWnd = _parni( 1 );
WORD wCols = _parni( 2 );
int nLeft = _parni( 3 );
int nRight = _parni( 4 );
HDC hDC = GetDC( hWnd );
RECT rct;
GetClientRect( hWnd, &rct );
if ( nLeft ) {
rct.left = nLeft;
}
if ( nRight ) {
rct.right = nRight;
}
ScrollWindowEx( hWnd, wCols, 0, 0, &rct, 0, 0, 0 );
ReleaseDC( hWnd, hDC );
}
//----------------------------------------------------------------------------//
and this another
Code: Select all
#include "WinTen.h"
#include <Windows.h>
#include "ClipApi.h"
void pascal Dos3Call( void );
#define SUBSTDRIVE 0x8000
#define NETDRIVE 0x1000
//----------------------------------------------------------------------------//
CLIPPER cDrives() // It returns an string with all the valid drives ids
{
BYTE b,c;
BYTE drives[ 26 ];
BYTE nDrives = 0;
c = 0;
for( b = 0; b < 26; b++ )
drives[ b ] = ' ';
for( b = 0; b < 26; b++ )
{
// drives[ b ] = ' ';
_AX = 0x4409;
_BL = b;
Dos3Call();
if( ! ( _FLAGS & 1 ) )
{
drives[ c++ ] = 'A' + b - ( b >= 1 );
nDrives++;
}
}
_retclen( drives+1 , nDrives - 1);
}
//----------------------------------------------------------------------------//
Can You help me ...
Regards
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Silvio wrote:Dear Antonio,
if you remember they are two prg ( c) of grid : I'm try to converte the old classes of Canal5
On olivares2000 there are some classes of canal5 but there is not the grid class, i just converte today the banner class with help of Paco.
Code: Select all
dll32 static function ;
AcpGetDrives( nLength AS LONG, ;
@cBuffer AS STRING ) ;
AS LONG PASCAL FROM "GetLogicalDriveStringsA" ;
LIB "kernel32.dll"
function GetLocalDrives()
local nError := 0
local x := 0
local cDrives := Space( 78 )
local aDrives := {}
AcpGetDrives( 78, @cDrives )
for x:= 1 to 78 step 4
if !Empty( StrTran( SubStr( cDrives, x, 3 ), Chr( 0 ), "" ) )
AAdd( aDrives, SubStr( cDrives, x, 3 ) )
endif
next
return aDrives