歷任區域市政局議員、撲滅罪行委員會委員、香港法律改革委員會委員、香港法律改革委員會轄下嘅監護權及撫養權小組委員會主席、懲教署人員子女教育信託基金委員會主席、紀律人員薪俸及服務條件常務委員會主席、保安及護衛業管理委員會主席、立法局議員（1988年—1997年）、臨時立法會議員。現任自由黨副主席。1998年起循航運交通界晉身立法會議員，曾任該會交通事務委員會主席。2003年起出任內務委員會主席，成為立法會嘅第二號人物，當主席范徐麗泰唔能夠主持會議時，由佢代理，所以議員都叫佢做代主席。